diff --git a/rc/fzf-modules/fzf-ctags.kak b/rc/fzf-modules/fzf-ctags.kak index fd38d1d..0bbfde3 100644 --- a/rc/fzf-modules/fzf-ctags.kak +++ b/rc/fzf-modules/fzf-ctags.kak @@ -18,1207 +18,911 @@ Default arguments: " \ str fzf_tag_command "readtags" +declare-option -docstring "file that should be used by fzf-tag to provide tags. +Default value: tags" \ +str fzf_tag_file "tags" + map global fzf -docstring "find tag" 't' ': fzf-tag' -declare-option -hidden -docstring "A set of mappings for Ada filetype" \ -str fzf_tag_ada " -: package specifications -: packages -: types -: subtypes -: record type components -: enum type literals -: variables -: generic formal parameters -: constants -: user defined exceptions -: subprogram specifications -: subprograms -: task specifications -: tasks -: protected data specifications -: protected data -: task/protected data entries -: labels -: loop/declare identifiers -: (ctags internal use)" - -declare-option -hidden -docstring "A set of mappings for Ant filetype" \ -str fzf_tag_ant " -: projects -: targets -: properties(global) -: antfiles" - -declare-option -hidden -docstring "A set of mappings for Asciidoc filetype" \ -str fzf_tag_asciidoc " -: chapters -: sections -: level 2 sections -: level 3 sections -: level 4 sections -: level 5 sections -: anchors" - -declare-option -hidden -docstring "A set of mappings for Asm filetype" \ -str fzf_tag_asm " -: defines -: labels -: macros -: types (structs and records) -: sections" - -declare-option -hidden -docstring "A set of mappings for Asp filetype" \ -str fzf_tag_asp " -: constants -: classes -: functions -: subroutines -: variables" - -declare-option -hidden -docstring "A set of mappings for Autoconf filetype" \ -str fzf_tag_autoconf " -: packages -: templates -: autoconf macros -: options specified with --with-... -: options specified with --enable-... -: substitution keys -: automake conditions -: definitions" - -declare-option -hidden -docstring "A set of mappings for AutoIt filetype" \ -str fzf_tag_autoit " -: functions -: regions -: global variables -: local variables -: included scripts" - -declare-option -hidden -docstring "A set of mappings for Automake filetype" \ -str fzf_tag_automake " -: directories -: programs -: manuals -: ltlibraries -: libraries -: scripts -: datum -: conditions" - -declare-option -hidden -docstring "A set of mappings for Awk filetype" \ -str fzf_tag_awk " -: functions" - -declare-option -hidden -docstring "A set of mappings for Basic filetype" \ -str fzf_tag_basic " -: constants -: functions -: labels -: types -: variables -: enumerations" - -declare-option -hidden -docstring "A set of mappings for BETA filetype" \ -str fzf_tag_beta " -: fragment definitions -: slots (fragment uses) -: patterns (virtual or rebound)" - -declare-option -hidden -docstring "A set of mappings for Clojure filetype" \ -str fzf_tag_clojure " -: functions -: namespaces" - -declare-option -hidden -docstring "A set of mappings for CMake filetype" \ -str fzf_tag_cmake " -: functions -: macros -: targets -: variable definitions -: options specified with -D -: projects -: regex" - -declare-option -hidden -docstring "A set of mappings for C filetype" \ -str fzf_tag_c " -: macro definitions -: enumerators (values inside an enumeration) -: function definitions -: enumeration names -: included header files -: struct, and union members -: structure names -: typedefs -: union names -: variable definitions" - -declare-option -hidden -docstring "A set of mappings for C++ filetype" \ -str fzf_tag_cpp " -: macro definitions -: enumerators (values inside an enumeration) -: function definitions -: enumeration names -: included header files -: class, struct, and union members -: structure names -: typedefs -: union names -: variable definitions -: classes -: namespaces" - -declare-option -hidden -docstring "A set of mappings for CPreProcessor filetype" \ -str fzf_tag_cpreprocessor " -: macro definitions -: included header files" - -declare-option -hidden -docstring "A set of mappings for CSS filetype" \ -str fzf_tag_css " -: classes -: selectors -: identities" - -declare-option -hidden -docstring "A set of mappings for C# filetype" \ -str fzf_tag_csharp " -: classes -: macro definitions -: enumerators (values inside an enumeration) -: events -: fields -: enumeration names -: interfaces -: methods -: namespaces -: properties -: structure names -: typedefs" - -declare-option -hidden -docstring "A set of mappings for Ctags filetype" \ -str fzf_tag_ctags " -: language definitions -: kind definitions" - -declare-option -hidden -docstring "A set of mappings for Cobol filetype" \ -str fzf_tag_cobol " -: paragraphs -: data items -: source code file -: file descriptions (FD, SD, RD) -: group items -: program ids -: sections -: divisions" - -declare-option -hidden -docstring "A set of mappings for CUDA filetype" \ -str fzf_tag_cuda " -: macro definitions -: enumerators (values inside an enumeration) -: function definitions -: enumeration names -: included header files -: struct, and union members -: structure names -: typedefs -: union names -: variable definitions" - -declare-option -hidden -docstring "A set of mappings for D filetype" \ -str fzf_tag_d " -: aliases -: classes -: enumeration names -: enumerators (values inside an enumeration) -: function definitions -: interfaces -: class, struct, and union members -: mixins -: modules -: namespaces -: structure names -: templates -: union names -: variable definitions -: version statements" - -declare-option -hidden -docstring "A set of mappings for Diff filetype" \ -str fzf_tag_diff " -: modified files -: newly created files -: deleted files -: hunks" - -declare-option -hidden -docstring "A set of mappings for DTD filetype" \ -str fzf_tag_dtd " -: entities -: parameter entities -: elements -: attributes -: notations" - -declare-option -hidden -docstring "A set of mappings for DTS filetype" \ -str fzf_tag_dts " -: phandlers -: labels -: regex" - -declare-option -hidden -docstring "A set of mappings for DosBatch filetype" \ -str fzf_tag_dosbatch " -: labels -: variables" - -declare-option -hidden -docstring "A set of mappings for Eiffel filetype" \ -str fzf_tag_eiffel " -: classes -: features" - -declare-option -hidden -docstring "A set of mappings for Elm filetype" \ -str fzf_tag_elm " -: Module -: Renamed Imported Module -: Port -: Type Definition -: Type Constructor -: Type Alias -: Functions" - -declare-option -hidden -docstring "A set of mappings for Erlang filetype" \ -str fzf_tag_erlang " -: macro definitions -: functions -: modules -: record definitions -: type definitions" - -declare-option -hidden -docstring "A set of mappings for Falcon filetype" \ -str fzf_tag_falcon " -: classes -: functions -: class members -: variables -: imports" - -declare-option -hidden -docstring "A set of mappings for Flex filetype" \ -str fzf_tag_flex " -: functions -: classes -: methods -: properties -: global variables -: mxtags" - -declare-option -hidden -docstring "A set of mappings for Fortran filetype" \ -str fzf_tag_fortran " -: block data -: common blocks -: entry points -: enumerations -: functions -: interface contents, generic names, and operators -: type and structure components -: labels -: modules -: type bound procedures -: namelists -: enumeration values -: programs -: subroutines -: derived types and structures -: program (global) and module variables -: submodules" - -declare-option -hidden -docstring "A set of mappings for Fypp filetype" \ -str fzf_tag_fypp " -: macros" - -declare-option -hidden -docstring "A set of mappings for Gdbinit filetype" \ -str fzf_tag_gdbinit " -: definitions -: toplevel variables" - -declare-option -hidden -docstring "A set of mappings for Go filetype" \ -str fzf_tag_go " -: packages -: functions -: constants -: types -: variables -: structs -: interfaces -: struct members -: struct anonymous members -: unknown -: name for specifying imported package" - -declare-option -hidden -docstring "A set of mappings for HTML filetype" \ -str fzf_tag_html " -: named anchors -: H1 headings -: H2 headings -: H3 headings" - -declare-option -hidden -docstring "A set of mappings for Iniconf filetype" \ -str fzf_tag_iniconf " -: sections -: keys" - -declare-option -hidden -docstring "A set of mappings for ITcl filetype" \ -str fzf_tag_itcl " -: classes -: methods -: object-specific variables -: common variables -: procedures within the class namespace" - -declare-option -hidden -docstring "A set of mappings for Java filetype" \ -str fzf_tag_java " -: annotation declarations -: classes -: enum constants -: fields -: enum types -: interfaces -: methods -: packages" - -declare-option -hidden -docstring "A set of mappings for JavaProperties filetype" \ -str fzf_tag_javaproperties " -: keys" - -declare-option -hidden -docstring "A set of mappings for JavaScript filetype" \ -str fzf_tag_javascript " -: functions -: classes -: methods -: properties -: constants -: global variables -: generators" - -declare-option -hidden -docstring "A set of mappings for JSON filetype" \ -str fzf_tag_json " -: objects -: arrays -: numbers -: strings -: booleans -: nulls" - -declare-option -hidden -docstring "A set of mappings for LdScript filetype" \ -str fzf_tag_ldscript " -: sections -: symbols -: versions -: input sections" - -declare-option -hidden -docstring "A set of mappings for Lisp filetype" \ -str fzf_tag_lisp " -: functions" - -declare-option -hidden -docstring "A set of mappings for Lua filetype" \ -str fzf_tag_lua " -: functions" - -declare-option -hidden -docstring "A set of mappings for M4 filetype" \ -str fzf_tag_m4 " -: macros -: macro files" - -declare-option -hidden -docstring "A set of mappings for Man filetype" \ -str fzf_tag_man " -: titles -: sections" - -declare-option -hidden -docstring "A set of mappings for Make filetype" \ -str fzf_tag_make " -: macros -: targets -: makefiles" - -declare-option -hidden -docstring "A set of mappings for Markdown filetype" \ -str fzf_tag_markdown " -: chapsters -: sections -: subsections -: subsubsections -: level 4 subsections -: level 5 subsections -: regex" - -declare-option -hidden -docstring "A set of mappings for MatLab filetype" \ -str fzf_tag_matlab " -: function -: variable -: class" - -declare-option -hidden -docstring "A set of mappings for Myrddin filetype" \ -str fzf_tag_myrddin " -: functions -: constants -: variables -: types -: traits -: packages" - -declare-option -hidden -docstring "A set of mappings for ObjectiveC filetype" \ -str fzf_tag_objectivec " -: class interface -: class implementation -: Protocol -: Object's method -: Class' method -: Global variable -: Object field -: A function -: A property -: A type alias -: A type structure -: An enumeration -: A preprocessor macro" - -declare-option -hidden -docstring "A set of mappings for OCaml filetype" \ -str fzf_tag_ocaml " -: classes -: Object's method -: Module or functor -: Global variable -: Signature item -: Type name -: A function -: A constructor -: A 'structure' field -: An exception" - -declare-option -hidden -docstring "A set of mappings for Passwd filetype" \ -str fzf_tag_passwd " -: user names" - -declare-option -hidden -docstring "A set of mappings for Pascal filetype" \ -str fzf_tag_pascal " -: functions -: procedures" - -declare-option -hidden -docstring "A set of mappings for Perl filetype" \ -str fzf_tag_perl " -: constants -: formats -: labels -: packages -: subroutines" - -declare-option -hidden -docstring "A set of mappings for Perl6 filetype" \ -str fzf_tag_perl6 " -: classes -: grammars -: methods -: modules -: packages -: roles -: rules -: submethods -: subroutines -: tokens" - -declare-option -hidden -docstring "A set of mappings for PHP filetype" \ -str fzf_tag_php " -: classes -: constant definitions -: functions -: interfaces -: namespaces -: traits -: variables -: aliases" - -declare-option -hidden -docstring "A set of mappings for Pod filetype" \ -str fzf_tag_pod " -: chapters -: sections -: subsections -: subsubsections" - -declare-option -hidden -docstring "A set of mappings for Protobuf filetype" \ -str fzf_tag_protobuf " -: packages -: messages -: fields -: enum constants -: enum types -: services" - -declare-option -hidden -docstring "A set of mappings for PuppetManifest filetype" \ -str fzf_tag_puppetmanifest " -: classes -: definitions -: nodes -: resources -: variables" - -declare-option -hidden -docstring "A set of mappings for Python filetype" \ -str fzf_tag_python " -: classes -: functions -: class members -: variables -: name referring a module defined in other file -: modules -: name referring a class/variable/function/module defined in other module" - -declare-option -hidden -docstring "A set of mappings for PythonLoggingConfig filetype" \ -str fzf_tag_pythonloggingconfig " -: logger sections -: logger qualnames" - -declare-option -hidden -docstring "A set of mappings for QemuHX filetype" \ -str fzf_tag_qemuhx " -: QEMU Management Protocol dispatch table entries -: item in texinfo doc" - -declare-option -hidden -docstring "A set of mappings for QtMoc filetype" \ -str fzf_tag_qtmoc " -: slots -: signals -: properties" - -declare-option -hidden -docstring "A set of mappings for R filetype" \ -str fzf_tag_r " -: functions -: libraries -: sources -: global variables -: function variables" - -declare-option -hidden -docstring "A set of mappings for RSpec filetype" \ -str fzf_tag_rspec " -: describes -: contexts" - -declare-option -hidden -docstring "A set of mappings for REXX filetype" \ -str fzf_tag_rexx " -: subroutines" - -declare-option -hidden -docstring "A set of mappings for Robot filetype" \ -str fzf_tag_robot " -: testcases -: keywords -: variables" - -declare-option -hidden -docstring "A set of mappings for RpmSpec filetype" \ -str fzf_tag_rpmspec " -: tags -: macros -: packages -: global macros" - -declare-option -hidden -docstring "A set of mappings for ReStructuredText filetype" \ -str fzf_tag_restructuredtext " -: chapters -: sections -: subsections -: subsubsections -: targets" - -declare-option -hidden -docstring "A set of mappings for Ruby filetype" \ -str fzf_tag_ruby " -: classes -: methods -: modules -: singleton methods" - -declare-option -hidden -docstring "A set of mappings for Rust filetype" \ -str fzf_tag_rust " -: module -: structural type -: trait interface -: implementation -: Function -: Enum -: Type Alias -: Global variable -: Macro Definition -: A struct field -: An enum variant -: A method" - -declare-option -hidden -docstring "A set of mappings for Scheme filetype" \ -str fzf_tag_scheme " -: functions -: sets" - -declare-option -hidden -docstring "A set of mappings for Sh filetype" \ -str fzf_tag_sh " -: aliases -: functions -: script files -: label for here document" - -declare-option -hidden -docstring "A set of mappings for SLang filetype" \ -str fzf_tag_slang " -: functions -: namespaces" - -declare-option -hidden -docstring "A set of mappings for SML filetype" \ -str fzf_tag_sml " -: exception declarations -: function definitions -: functor definitions -: signature declarations -: structure declarations -: type definitions -: value bindings" - -declare-option -hidden -docstring "A set of mappings for SQL filetype" \ -str fzf_tag_sql " -: cursors -: functions -: record fields -: block label -: packages -: procedures -: subtypes -: tables -: triggers -: variables -: indexes -: events -: publications -: services -: domains -: views -: synonyms -: MobiLink Table Scripts -: MobiLink Conn Scripts -: MobiLink Properties " - -declare-option -hidden -docstring "A set of mappings for SystemdUnit filetype" \ -str fzf_tag_systemdunit " -: units" - -declare-option -hidden -docstring "A set of mappings for Tcl filetype" \ -str fzf_tag_tcl " -: procedures -: namespaces" - -declare-option -hidden -docstring "A set of mappings for TclOO filetype" \ -str fzf_tag_tcloo " -: classes -: methods" - -declare-option -hidden -docstring "A set of mappings for Tex filetype" \ -str fzf_tag_tex " -: parts -: chapters -: sections -: subsections -: subsubsections -: paragraphs -: subparagraphs -: labels -: includes" - -declare-option -hidden -docstring "A set of mappings for TTCN filetype" \ -str fzf_tag_ttcn " -: module definition -: type definition -: constant definition -: template definition -: function definition -: signature definition -: testcase definition -: altstep definition -: group definition -: module parameter definition -: variable instance -: timer instance -: port instance -: record/set/union member -: enumeration value" - -declare-option -hidden -docstring "A set of mappings for Vera filetype" \ -str fzf_tag_vera " -: classes -: macro definitions -: enumerators (values inside an enumeration) -: function definitions -: enumeration names -: interfaces -: class, struct, and union members -: programs -: signals -: tasks -: typedefs -: variable definitions -: included header files" - -declare-option -hidden -docstring "A set of mappings for Verilog filetype" \ -str fzf_tag_verilog " -: constants (define, parameter, specparam) -: events -: functions -: modules -: net data types -: ports -: register data types -: tasks -: blocks" - -declare-option -hidden -docstring "A set of mappings for SystemVerilog filetype" \ -str fzf_tag_systemverilog " -: constants (define, parameter, specparam, enum values) -: events -: functions -: modules -: net data types -: ports -: register data types -: tasks -: blocks -: assertions -: classes -: covergroups -: enumerators -: interfaces -: modports -: packages -: programs -: properties -: structs and unions -: type declarations" - -declare-option -hidden -docstring "A set of mappings for VHDL filetype" \ -str fzf_tag_vhdl " -: constant declarations -: type definitions -: subtype definitions -: record names -: entity declarations -: function prototypes and declarations -: procedure prototypes and declarations -: package definitions" - -declare-option -hidden -docstring "A set of mappings for Vim filetype" \ -str fzf_tag_vim " -: autocommand groups -: user-defined commands -: function definitions -: maps -: variable definitions -: vimball filename" - -declare-option -hidden -docstring "A set of mappings for WindRes filetype" \ -str fzf_tag_windres " -: dialogs -: menus -: icons -: bitmaps -: cursors -: fonts -: versions -: accelerators" - -declare-option -hidden -docstring "A set of mappings for YACC filetype" \ -str fzf_tag_yacc " -: labels" - -declare-option -hidden -docstring "A set of mappings for YumRepo filetype" \ -str fzf_tag_yumrepo " -: repository id" - -declare-option -hidden -docstring "A set of mappings for Zephir filetype" \ -str fzf_tag_zephir " -: classes -: constant definitions -: functions -: interfaces -: namespaces -: traits -: variables -: aliases" - -declare-option -hidden -docstring "A set of mappings for DBusIntrospect filetype" \ -str fzf_tag_dbusintrospect " -: interfaces -: methods -: signals -: properties" - -declare-option -hidden -docstring "A set of mappings for Glade filetype" \ -str fzf_tag_glade " -: identifiers -: classes -: handlers" - -declare-option -hidden -docstring "A set of mappings for Maven2 filetype" \ -str fzf_tag_maven2 " -: group identifiers -: artifact identifiers -: properties -: repository identifiers" - -declare-option -hidden -docstring "A set of mappings for PlistXML filetype" \ -str fzf_tag_plistxml " -: keys" - -declare-option -hidden -docstring "A set of mappings for RelaxNG filetype" \ -str fzf_tag_relaxng " -: elements -: attributes -: named patterns" - -declare-option -hidden -docstring "A set of mappings for SVG filetype" \ -str fzf_tag_svg " -: id attributes" - -declare-option -hidden -docstring "A set of mappings for XSLT filetype" \ -str fzf_tag_xslt " -: stylesheets -: parameters -: matched template -: matched template -: variables" - -declare-option -hidden -docstring "A set of mappings for Yaml filetype" \ -str fzf_tag_yaml " -: anchors" - -declare-option -hidden -docstring "A set of mappings for AnsiblePlaybook filetype" \ -str fzf_tag_ansibleplaybook " -: plays" +# this huge try block defines filetype aware filter mappings for separate fzf-ctags mode +try %{ + declare-user-mode fzf-ctags + + map global fzf -docstring "select tag type" '' ': enter-user-mode fzf-ctags' + + hook global WinSetOption filetype=ada %{ + map global fzf-ctags '' ': fzf-tag P' -docstring "package specifications" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + map global fzf-ctags 't' ': fzf-tag t' -docstring "types" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "subtypes" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "record type components" + map global fzf-ctags 'l' ': fzf-tag l' -docstring "enum type literals" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "generic formal parameters" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "constants" + map global fzf-ctags 'x' ': fzf-tag x' -docstring "user defined exceptions" + map global fzf-ctags '' ': fzf-tag R' -docstring "subprogram specifications" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "subprograms" + map global fzf-ctags '' ': fzf-tag K' -docstring "task specifications" + map global fzf-ctags 'k' ': fzf-tag k' -docstring "tasks" + map global fzf-ctags '' ': fzf-tag O' -docstring "protected data specifications" + map global fzf-ctags 'o' ': fzf-tag o' -docstring "protected data" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "task/protected data entries" + map global fzf-ctags 'b' ': fzf-tag b' -docstring "labels" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "projects" + map global fzf-ctags 't' ': fzf-tag t' -docstring "targets" + } + + hook global WinSetOption filetype=ant %{ + map global fzf-ctags '' ': fzf-tag P' -docstring "properties(global)" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "antfiles" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "chapters" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + } + + hook global WinSetOption filetype=asciidoc %{ + map global fzf-ctags '' ': fzf-tag S' -docstring "level 2 sections" + map global fzf-ctags 't' ': fzf-tag t' -docstring "level 3 sections" + map global fzf-ctags '' ': fzf-tag T' -docstring "level 4 sections" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "level 5 sections" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "anchors" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "defines" + map global fzf-ctags 'l' ': fzf-tag l' -docstring "labels" + } + + hook global WinSetOption filetype=asm %{ + map global fzf-ctags 'm' ': fzf-tag m' -docstring "macros" + map global fzf-ctags 't' ': fzf-tag t' -docstring "types (structs and records)" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "constants" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + } + + hook global WinSetOption filetype=asp %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 's' ': fzf-tag s' -docstring "subroutines" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + map global fzf-ctags 't' ': fzf-tag t' -docstring "templates" + } + + hook global WinSetOption filetype=autoconf %{ + map global fzf-ctags 'm' ': fzf-tag m' -docstring "autoconf macros" + map global fzf-ctags 'w' ': fzf-tag w' -docstring "options specified with --with-..." + map global fzf-ctags 'e' ': fzf-tag e' -docstring "options specified with --enable-..." + map global fzf-ctags 's' ': fzf-tag s' -docstring "substitution keys" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "automake conditions" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "definitions" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "regions" + } + + hook global WinSetOption filetype=autoit %{ + map global fzf-ctags 'g' ': fzf-tag g' -docstring "global variables" + map global fzf-ctags 'l' ': fzf-tag l' -docstring "local variables" + map global fzf-ctags '' ': fzf-tag S' -docstring "included scripts" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "directories" + map global fzf-ctags '' ': fzf-tag P' -docstring "programs" + } + + hook global WinSetOption filetype=automake %{ + map global fzf-ctags '' ': fzf-tag M' -docstring "manuals" + map global fzf-ctags '' ': fzf-tag T' -docstring "ltlibraries" + map global fzf-ctags '' ': fzf-tag L' -docstring "libraries" + map global fzf-ctags '' ': fzf-tag S' -docstring "scripts" + map global fzf-ctags '' ': fzf-tag D' -docstring "datum" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "conditions" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "constants" + } + + hook global WinSetOption filetype=awk %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + } + + hook global WinSetOption filetype=basic %{ + map global fzf-ctags 'l' ': fzf-tag l' -docstring "labels" + map global fzf-ctags 't' ': fzf-tag t' -docstring "types" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enumerations" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "fragment definitions" + map global fzf-ctags 's' ': fzf-tag s' -docstring "slots (fragment uses)" + } + + hook global WinSetOption filetype=beta %{ + map global fzf-ctags 'v' ': fzf-tag v' -docstring "patterns (virtual or rebound)" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namespaces" + } + + hook global WinSetOption filetype=clojure %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "macros" + } + + hook global WinSetOption filetype=cmake %{ + map global fzf-ctags 't' ': fzf-tag t' -docstring "targets" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable definitions" + map global fzf-ctags '' ': fzf-tag D' -docstring "options specified with -D" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "projects" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "regex" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "macro definitions" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enumerators (values inside an enumeration)" + } + + hook global WinSetOption filetype=c %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "function definitions" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enumeration names" + map global fzf-ctags 'h' ': fzf-tag h' -docstring "included header files" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "struct, and union members" + map global fzf-ctags 's' ': fzf-tag s' -docstring "structure names" + map global fzf-ctags 't' ': fzf-tag t' -docstring "typedefs" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "union names" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable definitions" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "macro definitions" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enumerators (values inside an enumeration)" + } + + hook global WinSetOption filetype=cpp %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "function definitions" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enumeration names" + map global fzf-ctags 'h' ': fzf-tag h' -docstring "included header files" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "class, struct, and union members" + map global fzf-ctags 's' ': fzf-tag s' -docstring "structure names" + map global fzf-ctags 't' ': fzf-tag t' -docstring "typedefs" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "union names" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable definitions" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namespaces" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "macro definitions" + map global fzf-ctags 'h' ': fzf-tag h' -docstring "included header files" + } + + hook global WinSetOption filetype=cpreprocessor %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 's' ': fzf-tag s' -docstring "selectors" + } + + hook global WinSetOption filetype=css %{ + map global fzf-ctags 'i' ': fzf-tag i' -docstring "identities" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "macro definitions" + } + + hook global WinSetOption filetype=csharp %{ + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enumerators (values inside an enumeration)" + map global fzf-ctags '' ': fzf-tag E' -docstring "events" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "fields" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enumeration names" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interfaces" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "methods" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namespaces" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "properties" + map global fzf-ctags 's' ': fzf-tag s' -docstring "structure names" + map global fzf-ctags 't' ': fzf-tag t' -docstring "typedefs" + map global fzf-ctags 'l' ': fzf-tag l' -docstring "language definitions" + map global fzf-ctags 'k' ': fzf-tag k' -docstring "kind definitions" + } + + hook global WinSetOption filetype=ctags %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "paragraphs" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "data items" + } + + hook global WinSetOption filetype=cobol %{ + map global fzf-ctags '' ': fzf-tag S' -docstring "source code file" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "file descriptions (FD, SD, RD)" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "group items" + map global fzf-ctags '' ': fzf-tag P' -docstring "program ids" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + map global fzf-ctags '' ': fzf-tag D' -docstring "divisions" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "macro definitions" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enumerators (values inside an enumeration)" + } + + hook global WinSetOption filetype=cuda %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "function definitions" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enumeration names" + map global fzf-ctags 'h' ': fzf-tag h' -docstring "included header files" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "struct, and union members" + map global fzf-ctags 's' ': fzf-tag s' -docstring "structure names" + map global fzf-ctags 't' ': fzf-tag t' -docstring "typedefs" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "union names" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable definitions" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "aliases" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + } + + hook global WinSetOption filetype=d %{ + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enumeration names" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enumerators (values inside an enumeration)" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "function definitions" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interfaces" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "class, struct, and union members" + map global fzf-ctags '' ': fzf-tag X' -docstring "mixins" + map global fzf-ctags '' ': fzf-tag M' -docstring "modules" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namespaces" + map global fzf-ctags 's' ': fzf-tag s' -docstring "structure names" + map global fzf-ctags '' ': fzf-tag T' -docstring "templates" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "union names" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable definitions" + map global fzf-ctags '' ': fzf-tag V' -docstring "version statements" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "modified files" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "newly created files" + } + + hook global WinSetOption filetype=diff %{ + map global fzf-ctags 'd' ': fzf-tag d' -docstring "deleted files" + map global fzf-ctags 'h' ': fzf-tag h' -docstring "hunks" + map global fzf-ctags '' ': fzf-tag E' -docstring "entities" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "parameter entities" + } + + hook global WinSetOption filetype=dtd %{ + map global fzf-ctags 'e' ': fzf-tag e' -docstring "elements" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "attributes" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "notations" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "phandlers" + map global fzf-ctags 'l' ': fzf-tag l' -docstring "labels" + } + + hook global WinSetOption filetype=dts %{ + map global fzf-ctags 'r' ': fzf-tag r' -docstring "regex" + map global fzf-ctags 'l' ': fzf-tag l' -docstring "labels" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + } + + hook global WinSetOption filetype=dosbatch %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "features" + } + + hook global WinSetOption filetype=eiffel %{ + map global fzf-ctags 'm' ': fzf-tag m' -docstring "Module" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "Renamed Imported Module" + } + + hook global WinSetOption filetype=elm %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "Port" + map global fzf-ctags 't' ': fzf-tag t' -docstring "Type Definition" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "Type Constructor" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "Type Alias" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "Functions" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "macro definitions" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + } + + hook global WinSetOption filetype=erlang %{ + map global fzf-ctags 'm' ': fzf-tag m' -docstring "modules" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "record definitions" + map global fzf-ctags 't' ': fzf-tag t' -docstring "type definitions" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + } + + hook global WinSetOption filetype=falcon %{ + map global fzf-ctags 'm' ': fzf-tag m' -docstring "class members" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "imports" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + } + + hook global WinSetOption filetype=flex %{ + map global fzf-ctags 'm' ': fzf-tag m' -docstring "methods" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "properties" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "global variables" + map global fzf-ctags 'x' ': fzf-tag x' -docstring "mxtags" + map global fzf-ctags 'b' ': fzf-tag b' -docstring "block data" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "common blocks" + } + + hook global WinSetOption filetype=fortran %{ + map global fzf-ctags 'e' ': fzf-tag e' -docstring "entry points" + map global fzf-ctags '' ': fzf-tag E' -docstring "enumerations" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interface contents, generic names, and operators" + map global fzf-ctags 'k' ': fzf-tag k' -docstring "type and structure components" + map global fzf-ctags 'l' ': fzf-tag l' -docstring "labels" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "modules" + map global fzf-ctags '' ': fzf-tag M' -docstring "type bound procedures" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namelists" + map global fzf-ctags '' ': fzf-tag N' -docstring "enumeration values" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "programs" + map global fzf-ctags 's' ': fzf-tag s' -docstring "subroutines" + map global fzf-ctags 't' ': fzf-tag t' -docstring "derived types and structures" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "program (global) and module variables" + map global fzf-ctags '' ': fzf-tag S' -docstring "submodules" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "macros" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "definitions" + } + + hook global WinSetOption filetype=fypp %{ + map global fzf-ctags 't' ': fzf-tag t' -docstring "toplevel variables" + } + + hook global WinSetOption filetype=gdbinit %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + } + + hook global WinSetOption filetype=go %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "constants" + map global fzf-ctags 't' ': fzf-tag t' -docstring "types" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 's' ': fzf-tag s' -docstring "structs" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interfaces" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "struct members" + map global fzf-ctags '' ': fzf-tag M' -docstring "struct anonymous members" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "unknown" + map global fzf-ctags '' ': fzf-tag P' -docstring "name for specifying imported package" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "named anchors" + map global fzf-ctags 'h' ': fzf-tag h' -docstring "H1 headings" + } + + hook global WinSetOption filetype=html %{ + map global fzf-ctags 'i' ': fzf-tag i' -docstring "H2 headings" + map global fzf-ctags 'j' ': fzf-tag j' -docstring "H3 headings" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + map global fzf-ctags 'k' ': fzf-tag k' -docstring "keys" + } + + hook global WinSetOption filetype=iniconf %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "methods" + } + + hook global WinSetOption filetype=itcl %{ + map global fzf-ctags 'v' ': fzf-tag v' -docstring "object-specific variables" + map global fzf-ctags '' ': fzf-tag C' -docstring "common variables" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "procedures within the class namespace" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enum constants" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "fields" + } + + hook global WinSetOption filetype=java %{ + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enum types" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interfaces" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "methods" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + map global fzf-ctags 'k' ': fzf-tag k' -docstring "keys" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "methods" + } + + hook global WinSetOption filetype=javaproperties %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "properties" + } + + hook global WinSetOption filetype=javascript %{ + map global fzf-ctags '' ': fzf-tag C' -docstring "constants" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "global variables" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "generators" + map global fzf-ctags 'o' ': fzf-tag o' -docstring "objects" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "arrays" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "numbers" + map global fzf-ctags 's' ': fzf-tag s' -docstring "strings" + } + + hook global WinSetOption filetype=json %{ + map global fzf-ctags 'b' ': fzf-tag b' -docstring "booleans" + map global fzf-ctags 'z' ': fzf-tag z' -docstring "nulls" + map global fzf-ctags '' ': fzf-tag S' -docstring "sections" + map global fzf-ctags 's' ': fzf-tag s' -docstring "symbols" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "versions" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "input sections" + } + + hook global WinSetOption filetype=ldscript %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "macros" + map global fzf-ctags '' ': fzf-tag I' -docstring "macro files" + } + + hook global WinSetOption filetype=lisp %{ + map global fzf-ctags 't' ': fzf-tag t' -docstring "titles" + } + + hook global WinSetOption filetype=lua %{ + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + } + + hook global WinSetOption filetype=m4 %{ + map global fzf-ctags 'm' ': fzf-tag m' -docstring "macros" + map global fzf-ctags 't' ': fzf-tag t' -docstring "targets" + } + + hook global WinSetOption filetype=man %{ + map global fzf-ctags '' ': fzf-tag I' -docstring "makefiles" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "chapsters" + } + + hook global WinSetOption filetype=make %{ + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + map global fzf-ctags '' ': fzf-tag S' -docstring "subsections" + map global fzf-ctags 't' ': fzf-tag t' -docstring "subsubsections" + } + + hook global WinSetOption filetype=markdown %{ + map global fzf-ctags '' ': fzf-tag T' -docstring "level 4 subsections" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "level 5 subsections" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "regex" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "function" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "class" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + } + + hook global WinSetOption filetype=matlab %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "constants" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 't' ': fzf-tag t' -docstring "types" + } + + hook global WinSetOption filetype=myrddin %{ + map global fzf-ctags 'r' ': fzf-tag r' -docstring "traits" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "class interface" + map global fzf-ctags '' ': fzf-tag I' -docstring "class implementation" + map global fzf-ctags '' ': fzf-tag P' -docstring "Protocol" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "Object's method" + } + + hook global WinSetOption filetype=objectivec %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "Class' method" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "Global variable" + map global fzf-ctags '' ': fzf-tag E' -docstring "Object field" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "A function" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "A property" + map global fzf-ctags 't' ': fzf-tag t' -docstring "A type alias" + map global fzf-ctags 's' ': fzf-tag s' -docstring "A type structure" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "An enumeration" + map global fzf-ctags '' ': fzf-tag M' -docstring "A preprocessor macro" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "Object's method" + map global fzf-ctags '' ': fzf-tag M' -docstring "Module or functor" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "Global variable" + } + + hook global WinSetOption filetype=ocaml %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "Signature item" + map global fzf-ctags 't' ': fzf-tag t' -docstring "Type name" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "A function" + map global fzf-ctags '' ': fzf-tag C' -docstring "A constructor" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "A 'structure' field" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "An exception" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "user names" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "procedures" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "constants" + } + + hook global WinSetOption filetype=passwd %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "formats" + } + + hook global WinSetOption filetype=pascal %{ + map global fzf-ctags 'l' ': fzf-tag l' -docstring "labels" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + } + + hook global WinSetOption filetype=perl %{ + map global fzf-ctags 's' ': fzf-tag s' -docstring "subroutines" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "grammars" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "methods" + map global fzf-ctags 'o' ': fzf-tag o' -docstring "modules" + } + + hook global WinSetOption filetype=perl6 %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "roles" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "rules" + map global fzf-ctags 'b' ': fzf-tag b' -docstring "submethods" + map global fzf-ctags 's' ': fzf-tag s' -docstring "subroutines" + map global fzf-ctags 't' ': fzf-tag t' -docstring "tokens" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "constant definitions" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interfaces" + } + + hook global WinSetOption filetype=php %{ + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namespaces" + map global fzf-ctags 't' ': fzf-tag t' -docstring "traits" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "aliases" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "chapters" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + map global fzf-ctags '' ': fzf-tag S' -docstring "subsections" + map global fzf-ctags 't' ': fzf-tag t' -docstring "subsubsections" + } + + hook global WinSetOption filetype=pod %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "messages" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "fields" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enum constants" + } + + hook global WinSetOption filetype=protobuf %{ + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enum types" + map global fzf-ctags 's' ': fzf-tag s' -docstring "services" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "definitions" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "nodes" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "resources" + } + + hook global WinSetOption filetype=puppetmanifest %{ + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "class members" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + } + + hook global WinSetOption filetype=python %{ + map global fzf-ctags '' ': fzf-tag I' -docstring "name referring a module defined in other file" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "modules" + map global fzf-ctags 'x' ': fzf-tag x' -docstring "name referring a class/variable/function/module defined in other module" + map global fzf-ctags '' ': fzf-tag L' -docstring "logger sections" + map global fzf-ctags 'q' ': fzf-tag q' -docstring "logger qualnames" + map global fzf-ctags 'q' ': fzf-tag q' -docstring "QEMU Management Protocol dispatch table entries" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "item in texinfo doc" + } + + hook global WinSetOption filetype=pythonloggingconfig %{ + map global fzf-ctags 's' ': fzf-tag s' -docstring "slots" + map global fzf-ctags '' ': fzf-tag S' -docstring "signals" + } + + hook global WinSetOption filetype=qemuhx %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "properties" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + } + + hook global WinSetOption filetype=qtmoc %{ + map global fzf-ctags 'l' ': fzf-tag l' -docstring "libraries" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sources" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "global variables" + } + + hook global WinSetOption filetype=r %{ + map global fzf-ctags 'v' ': fzf-tag v' -docstring "function variables" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "describes" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "contexts" + map global fzf-ctags 's' ': fzf-tag s' -docstring "subroutines" + map global fzf-ctags 't' ': fzf-tag t' -docstring "testcases" + } + + hook global WinSetOption filetype=rspec %{ + map global fzf-ctags 'k' ': fzf-tag k' -docstring "keywords" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + } + + hook global WinSetOption filetype=rexx %{ + map global fzf-ctags 't' ': fzf-tag t' -docstring "tags" + } + + hook global WinSetOption filetype=robot %{ + map global fzf-ctags 'm' ': fzf-tag m' -docstring "macros" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "packages" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "global macros" + } + + hook global WinSetOption filetype=rpmspec %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "chapters" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + map global fzf-ctags '' ': fzf-tag S' -docstring "subsections" + map global fzf-ctags 't' ': fzf-tag t' -docstring "subsubsections" + } + + hook global WinSetOption filetype=restructuredtext %{ + map global fzf-ctags '' ': fzf-tag T' -docstring "targets" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "methods" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "modules" + map global fzf-ctags '' ': fzf-tag S' -docstring "singleton methods" + } + + hook global WinSetOption filetype=ruby %{ + map global fzf-ctags 'n' ': fzf-tag n' -docstring "module" + map global fzf-ctags 's' ': fzf-tag s' -docstring "structural type" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "trait interface" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "implementation" + } + + hook global WinSetOption filetype=rust %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "Function" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "Enum" + map global fzf-ctags 't' ': fzf-tag t' -docstring "Type Alias" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "Global variable" + map global fzf-ctags '' ': fzf-tag M' -docstring "Macro Definition" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "A struct field" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "An enum variant" + map global fzf-ctags '' ': fzf-tag P' -docstring "A method" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sets" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "aliases" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + } + + hook global WinSetOption filetype=scheme %{ + map global fzf-ctags 's' ': fzf-tag s' -docstring "script files" + map global fzf-ctags 'h' ': fzf-tag h' -docstring "label for here document" + } + + hook global WinSetOption filetype=sh %{ + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namespaces" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "functor definitions" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "value bindings" + } + + hook global WinSetOption filetype=slang %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "cursors" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + } + + hook global WinSetOption filetype=sml %{ + map global fzf-ctags '' ': fzf-tag E' -docstring "record fields" + map global fzf-ctags '' ': fzf-tag L' -docstring "block label" + map global fzf-ctags '' ': fzf-tag P' -docstring "packages" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "procedures" + map global fzf-ctags 's' ': fzf-tag s' -docstring "subtypes" + map global fzf-ctags 't' ': fzf-tag t' -docstring "tables" + map global fzf-ctags '' ': fzf-tag T' -docstring "triggers" + } + + hook global WinSetOption filetype=sql %{ + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "indexes" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "events" + map global fzf-ctags '' ': fzf-tag U' -docstring "publications" + map global fzf-ctags '' ': fzf-tag R' -docstring "services" + map global fzf-ctags '' ': fzf-tag D' -docstring "domains" + map global fzf-ctags '' ': fzf-tag V' -docstring "views" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "synonyms" + map global fzf-ctags 'x' ': fzf-tag x' -docstring "MobiLink Table Scripts" + map global fzf-ctags 'y' ': fzf-tag y' -docstring "MobiLink Conn Scripts" + map global fzf-ctags 'z' ': fzf-tag z' -docstring "MobiLink Properties " + map global fzf-ctags 'u' ': fzf-tag u' -docstring "units" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "procedures" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namespaces" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "methods" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "parts" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "chapters" + map global fzf-ctags 's' ': fzf-tag s' -docstring "sections" + map global fzf-ctags 'u' ': fzf-tag u' -docstring "subsections" + } + + hook global WinSetOption filetype=systemdunit %{ + map global fzf-ctags 'b' ': fzf-tag b' -docstring "subsubsections" + } + + hook global WinSetOption filetype=tcl %{ + map global fzf-ctags '' ': fzf-tag P' -docstring "paragraphs" + map global fzf-ctags '' ': fzf-tag G' -docstring "subparagraphs" + } + + hook global WinSetOption filetype=tcloo %{ + map global fzf-ctags 'l' ': fzf-tag l' -docstring "labels" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "includes" + } + + hook global WinSetOption filetype=tex %{ + map global fzf-ctags '' ': fzf-tag M' -docstring "module definition" + map global fzf-ctags 't' ': fzf-tag t' -docstring "type definition" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "constant definition" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "template definition" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "function definition" + map global fzf-ctags 's' ': fzf-tag s' -docstring "signature definition" + map global fzf-ctags '' ': fzf-tag C' -docstring "testcase definition" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "altstep definition" + map global fzf-ctags '' ': fzf-tag G' -docstring "group definition" + } + + hook global WinSetOption filetype=ttcn %{ + map global fzf-ctags '' ': fzf-tag P' -docstring "module parameter definition" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable instance" + map global fzf-ctags '' ': fzf-tag T' -docstring "timer instance" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "port instance" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "record/set/union member" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enumeration value" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "macro definitions" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "enumerators (values inside an enumeration)" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "function definitions" + map global fzf-ctags 'g' ': fzf-tag g' -docstring "enumeration names" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interfaces" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "class, struct, and union members" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "programs" + map global fzf-ctags 's' ': fzf-tag s' -docstring "signals" + } + + hook global WinSetOption filetype=vera %{ + map global fzf-ctags 't' ': fzf-tag t' -docstring "tasks" + map global fzf-ctags '' ': fzf-tag T' -docstring "typedefs" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable definitions" + map global fzf-ctags 'h' ': fzf-tag h' -docstring "included header files" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "constants (define, parameter, specparam)" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "events" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "modules" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "net data types" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "ports" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "register data types" + map global fzf-ctags 't' ': fzf-tag t' -docstring "tasks" + map global fzf-ctags 'b' ': fzf-tag b' -docstring "blocks" + } + + hook global WinSetOption filetype=verilog %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "constants (define, parameter, specparam, enum values)" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "events" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "modules" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "net data types" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "ports" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "register data types" + map global fzf-ctags 't' ': fzf-tag t' -docstring "tasks" + map global fzf-ctags 'b' ': fzf-tag b' -docstring "blocks" + } + + hook global WinSetOption filetype=systemverilog %{ + map global fzf-ctags '' ': fzf-tag A' -docstring "assertions" + map global fzf-ctags '' ': fzf-tag C' -docstring "classes" + map global fzf-ctags '' ': fzf-tag V' -docstring "covergroups" + map global fzf-ctags '' ': fzf-tag E' -docstring "enumerators" + map global fzf-ctags '' ': fzf-tag I' -docstring "interfaces" + map global fzf-ctags '' ': fzf-tag M' -docstring "modports" + map global fzf-ctags '' ': fzf-tag K' -docstring "packages" + map global fzf-ctags '' ': fzf-tag P' -docstring "programs" + map global fzf-ctags '' ': fzf-tag R' -docstring "properties" + map global fzf-ctags '' ': fzf-tag S' -docstring "structs and unions" + map global fzf-ctags '' ': fzf-tag T' -docstring "subtype definitions" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "record names" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "autocommand groups" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "user-defined commands" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "function definitions" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "maps" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variable definitions" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "vimball filename" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "dialogs" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "menus" + } + + hook global WinSetOption filetype=vhdl %{ + map global fzf-ctags 'i' ': fzf-tag i' -docstring "icons" + map global fzf-ctags 'b' ': fzf-tag b' -docstring "bitmaps" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "cursors" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "fonts" + map global fzf-ctags 'v' ': fzf-tag v' -docstring "versions" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "accelerators" + map global fzf-ctags 'l' ': fzf-tag l' -docstring "labels" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "repository id" + } + + hook global WinSetOption filetype=vim %{ + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + map global fzf-ctags 'd' ': fzf-tag d' -docstring "constant definitions" + map global fzf-ctags 'f' ': fzf-tag f' -docstring "functions" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interfaces" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "namespaces" + map global fzf-ctags 't' ': fzf-tag t' -docstring "traits" + } + + hook global WinSetOption filetype=windres %{ + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "aliases" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "interfaces" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "methods" + map global fzf-ctags 's' ': fzf-tag s' -docstring "signals" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "properties" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "identifiers" + map global fzf-ctags 'c' ': fzf-tag c' -docstring "classes" + } + + hook global WinSetOption filetype=yacc %{ + map global fzf-ctags 'h' ': fzf-tag h' -docstring "handlers" + } + + hook global WinSetOption filetype=yumrepo %{ + map global fzf-ctags 'g' ': fzf-tag g' -docstring "group identifiers" + } + + hook global WinSetOption filetype=zephir %{ + map global fzf-ctags 'a' ': fzf-tag a' -docstring "artifact identifiers" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "properties" + map global fzf-ctags 'r' ': fzf-tag r' -docstring "repository identifiers" + map global fzf-ctags 'k' ': fzf-tag k' -docstring "keys" + map global fzf-ctags 'e' ': fzf-tag e' -docstring "elements" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "attributes" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "named patterns" + map global fzf-ctags 'i' ': fzf-tag i' -docstring "id attributes" + } + + hook global WinSetOption filetype=dbusintrospect %{ + map global fzf-ctags 's' ': fzf-tag s' -docstring "stylesheets" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "parameters" + map global fzf-ctags 'm' ': fzf-tag m' -docstring "matched template" + map global fzf-ctags 'n' ': fzf-tag n' -docstring "matched template" + } + + hook global WinSetOption filetype=glade %{ + map global fzf-ctags 'v' ': fzf-tag v' -docstring "variables" + map global fzf-ctags 'a' ': fzf-tag a' -docstring "anchors" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + } + + hook global WinSetOption filetype=maven2 %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + } + + hook global WinSetOption filetype=plistxml %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + } + + hook global WinSetOption filetype=relaxng %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + } + + hook global WinSetOption filetype=svg %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + } + + hook global WinSetOption filetype=xslt %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + } + + hook global WinSetOption filetype=yaml %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + } + + hook global WinSetOption filetype=ansibleplaybook %{ + map global fzf-ctags 'p' ': fzf-tag p' -docstring "plays" + } +} catch %{ + echo -debug "Error while declaring 'fzf-ctags' mode" +} define-command -hidden fzf-tag -params ..2 %{ evaluate-commands %sh{ - case $kak_opt_filetype in - ada) - additional_keybindings="--expect ctrl-alt-p --expect alt-p --expect ctrl-alt-t --expect alt-t --expect ctrl-alt-u --expect alt-u --expect alt-c --expect alt-l --expect ctrl-alt-v --expect alt-v --expect alt-f --expect alt-n --expect alt-x --expect ctrl-alt-r --expect alt-r --expect ctrl-alt-k --expect alt-k --expect ctrl-alt-o --expect alt-o --expect ctrl-alt-e --expect alt-e --expect alt-b --expect alt-i --expect alt-a --expect alt-y --expect ctrl-alt-s" - additional_message=$kak_opt_fzf_tag_ada ;; - ant) - additional_keybindings="--expect alt-p --expect alt-t --expect ctrl-alt-p --expect alt-i" - additional_message=$kak_opt_fzf_tag_ant ;; - asciidoc) - additional_keybindings="--expect alt-c --expect alt-s --expect ctrl-alt-s --expect alt-t --expect ctrl-alt-t --expect alt-u --expect alt-a" - additional_message=$kak_opt_fzf_tag_asciidoc ;; - asm) - additional_keybindings="--expect alt-d --expect alt-l --expect alt-m --expect alt-t --expect alt-s" - additional_message=$kak_opt_fzf_tag_asm ;; - asp) - additional_keybindings="--expect alt-d --expect alt-c --expect alt-f --expect alt-s --expect alt-v" - additional_message=$kak_opt_fzf_tag_asp ;; - autoconf) - additional_keybindings="--expect alt-p --expect alt-t --expect alt-m --expect alt-w --expect alt-e --expect alt-s --expect alt-c --expect alt-d" - additional_message=$kak_opt_fzf_tag_autoconf ;; - autoit) - additional_keybindings="--expect alt-f --expect alt-r --expect alt-g --expect alt-l --expect ctrl-alt-s" - additional_message=$kak_opt_fzf_tag_autoit ;; - automake) - additional_keybindings="--expect alt-d --expect ctrl-alt-p --expect ctrl-alt-m --expect ctrl-alt-t --expect ctrl-alt-l --expect ctrl-alt-s --expect ctrl-alt-d --expect alt-c" - additional_message=$kak_opt_fzf_tag_automake ;; - awk) - additional_keybindings="--expect alt-f" - additional_message=$kak_opt_fzf_tag_awk ;; - basic) - additional_keybindings="--expect alt-c --expect alt-f --expect alt-l --expect alt-t --expect alt-v --expect alt-g" - additional_message=$kak_opt_fzf_tag_basic ;; - beta) - additional_keybindings="--expect alt-f --expect alt-p --expect alt-s --expect alt-v" - additional_message=$kak_opt_fzf_tag_beta ;; - clojure) - additional_keybindings="--expect alt-f --expect alt-n" - additional_message=$kak_opt_fzf_tag_clojure ;; - cmake) - additional_keybindings="--expect alt-f --expect alt-m --expect alt-t --expect alt-v --expect ctrl-alt-d --expect alt-p --expect alt-r" - additional_message=$kak_opt_fzf_tag_cmake ;; - c) - additional_keybindings="--expect alt-d --expect alt-e --expect alt-f --expect alt-g --expect alt-h --expect alt-l --expect alt-m --expect alt-p --expect alt-s --expect alt-t --expect alt-u --expect alt-v --expect alt-x --expect alt-z --expect ctrl-alt-l" - additional_message=$kak_opt_fzf_tag_c ;; - cpp) - additional_keybindings="--expect alt-d --expect alt-e --expect alt-f --expect alt-g --expect alt-h --expect alt-l --expect alt-m --expect alt-p --expect alt-s --expect alt-t --expect alt-u --expect alt-v --expect alt-x --expect alt-z --expect ctrl-alt-l --expect alt-c --expect alt-n --expect ctrl-alt-a --expect ctrl-alt-n --expect ctrl-alt-u" - additional_message=$kak_opt_fzf_tag_cpp ;; - cpreprocessor) - additional_keybindings="--expect alt-d --expect alt-h" - additional_message=$kak_opt_fzf_tag_cpreprocessor ;; - css) - additional_keybindings="--expect alt-c --expect alt-s --expect alt-i" - additional_message=$kak_opt_fzf_tag_css ;; - csharp) - additional_keybindings="--expect alt-c --expect alt-d --expect alt-e --expect ctrl-alt-e --expect alt-f --expect alt-g --expect alt-i --expect alt-l --expect alt-m --expect alt-n --expect alt-p --expect alt-s --expect alt-t" - additional_message=$kak_opt_fzf_tag_csharp ;; - ctags) - additional_keybindings="--expect alt-l --expect alt-k" - additional_message=$kak_opt_fzf_tag_ctags ;; - cobol) - additional_keybindings="--expect alt-p --expect alt-d --expect ctrl-alt-s --expect ctrl-alt-F --expect alt-g --expect ctrl-alt-p --expect alt-s --expect ctrl-alt-d" - additional_message=$kak_opt_fzf_tag_cobol ;; - cuda) - additional_keybindings="--expect alt-d --expect alt-e --expect alt-f --expect alt-g --expect alt-h --expect alt-l --expect alt-m --expect alt-p --expect alt-s --expect alt-t --expect alt-u --expect alt-v --expect alt-x --expect alt-z --expect ctrl-alt-l" - additional_message=$kak_opt_fzf_tag_cuda ;; - d) - additional_keybindings="--expect alt-a --expect alt-c --expect alt-g --expect alt-e --expect alt-x --expect alt-f --expect alt-i --expect alt-l --expect alt-m --expect ctrl-alt-x --expect ctrl-alt-m --expect alt-n --expect alt-p --expect alt-s --expect ctrl-alt-t --expect alt-u --expect alt-v --expect ctrl-alt-v" - additional_message=$kak_opt_fzf_tag_d ;; - diff) - additional_keybindings="--expect alt-m --expect alt-n --expect alt-d --expect alt-h" - additional_message=$kak_opt_fzf_tag_diff ;; - dtd) - additional_keybindings="--expect ctrl-alt-e --expect alt-p --expect alt-e --expect alt-a --expect alt-n" - additional_message=$kak_opt_fzf_tag_dtd ;; - dts) - additional_keybindings="--expect alt-p --expect alt-l --expect alt-r" - additional_message=$kak_opt_fzf_tag_dts ;; - dosbatch) - additional_keybindings="--expect alt-l --expect alt-v" - additional_message=$kak_opt_fzf_tag_dosbatch ;; - eiffel) - additional_keybindings="--expect alt-c --expect alt-f --expect alt-l" - additional_message=$kak_opt_fzf_tag_eiffel ;; - elm) - additional_keybindings="--expect ctrl-alt-M --expect ctrl-alt-N --expect ctrl-alt-P --expect ctrl-alt-T --expect ctrl-alt-C --expect ctrl-alt-A --expect ctrl-alt-F" - additional_message=$kak_opt_fzf_tag_elm ;; - erlang) - additional_keybindings="--expect alt-d --expect alt-f --expect alt-m --expect alt-r --expect alt-t" - additional_message=$kak_opt_fzf_tag_erlang ;; - falcon) - additional_keybindings="--expect alt-c --expect alt-f --expect alt-m --expect alt-v --expect alt-i" - additional_message=$kak_opt_fzf_tag_falcon ;; - flex) - additional_keybindings="--expect alt-f --expect alt-c --expect alt-m --expect alt-p --expect alt-v --expect alt-x" - additional_message=$kak_opt_fzf_tag_flex ;; - fortran) - additional_keybindings="--expect alt-b --expect alt-c --expect alt-e --expect ctrl-alt-e --expect alt-f --expect alt-i --expect alt-k --expect alt-l --expect ctrl-alt-l --expect alt-m --expect ctrl-alt-m --expect alt-n --expect ctrl-alt-n --expect alt-p --expect ctrl-alt-p --expect alt-s --expect alt-t --expect alt-v --expect ctrl-alt-s" - additional_message=$kak_opt_fzf_tag_fortran ;; - fypp) - additional_keybindings="--expect alt-m" - additional_message=$kak_opt_fzf_tag_fypp ;; - gdbinit) - additional_keybindings="--expect alt-d --expect ctrl-alt-d --expect alt-t --expect alt-l" - additional_message=$kak_opt_fzf_tag_gdbinit ;; - go) - additional_keybindings="--expect alt-p --expect alt-f --expect alt-c --expect alt-t --expect alt-v --expect alt-s --expect alt-i --expect alt-m --expect ctrl-alt-m --expect alt-u --expect ctrl-alt-p" - additional_message=$kak_opt_fzf_tag_go ;; - html) - additional_keybindings="--expect alt-a --expect ctrl-alt-H --expect ctrl-alt-I --expect ctrl-alt-J" - additional_message=$kak_opt_fzf_tag_html ;; - iniconf) - additional_keybindings="--expect alt-s --expect alt-k" - additional_message=$kak_opt_fzf_tag_iniconf ;; - itcl) - additional_keybindings="--expect alt-c --expect alt-m --expect alt-v --expect ctrl-alt-c --expect alt-p" - additional_message=$kak_opt_fzf_tag_itcl ;; - java) - additional_keybindings="--expect alt-a --expect alt-c --expect alt-e --expect alt-f --expect alt-g --expect alt-i --expect alt-l --expect alt-m --expect alt-p" - additional_message=$kak_opt_fzf_tag_java ;; - javaproperties) - additional_keybindings="--expect alt-k" - additional_message=$kak_opt_fzf_tag_javaproperties ;; - javascript) - additional_keybindings="--expect alt-f --expect alt-c --expect alt-m --expect alt-p --expect ctrl-alt-c --expect alt-v --expect alt-g" - additional_message=$kak_opt_fzf_tag_javascript ;; - json) - additional_keybindings="--expect alt-o --expect alt-a --expect alt-n --expect alt-s --expect alt-b --expect alt-z" - additional_message=$kak_opt_fzf_tag_json ;; - ldscript) - additional_keybindings="--expect ctrl-alt-s --expect alt-s --expect alt-v --expect alt-i" - additional_message=$kak_opt_fzf_tag_ldscript ;; - lisp) - additional_keybindings="--expect alt-f" - additional_message=$kak_opt_fzf_tag_lisp ;; - lua) - additional_keybindings="--expect alt-f" - additional_message=$kak_opt_fzf_tag_lua ;; - m4) - additional_keybindings="--expect alt-d --expect ctrl-alt-i" - additional_message=$kak_opt_fzf_tag_m4 ;; - man) - additional_keybindings="--expect alt-t --expect alt-s" - additional_message=$kak_opt_fzf_tag_man ;; - make) - additional_keybindings="--expect alt-m --expect alt-t --expect ctrl-alt-i" - additional_message=$kak_opt_fzf_tag_make ;; - markdown) - additional_keybindings="--expect alt-c --expect alt-s --expect ctrl-alt-s --expect alt-t --expect ctrl-alt-t --expect alt-u --expect alt-r" - additional_message=$kak_opt_fzf_tag_markdown ;; - matlab) - additional_keybindings="--expect alt-f --expect alt-v --expect alt-c" - additional_message=$kak_opt_fzf_tag_matlab ;; - myrddin) - additional_keybindings="--expect alt-f --expect alt-c --expect alt-v --expect alt-t --expect alt-r --expect alt-p" - additional_message=$kak_opt_fzf_tag_myrddin ;; - objectivec) - additional_keybindings="--expect alt-i --expect ctrl-alt-i --expect ctrl-alt-p --expect ctrl-alt-M --expect ctrl-alt-C --expect ctrl-alt-V --expect ctrl-alt-e --expect ctrl-alt-F --expect ctrl-alt-P --expect ctrl-alt-T --expect ctrl-alt-S --expect ctrl-alt-E --expect ctrl-alt-m" - additional_message=$kak_opt_fzf_tag_objectivec ;; - ocaml) - additional_keybindings="--expect alt-c --expect ctrl-alt-M --expect ctrl-alt-m --expect ctrl-alt-V --expect ctrl-alt-P --expect ctrl-alt-T --expect ctrl-alt-F --expect ctrl-alt-c --expect ctrl-alt-R --expect ctrl-alt-E" - additional_message=$kak_opt_fzf_tag_ocaml ;; - passwd) - additional_keybindings="--expect alt-u" - additional_message=$kak_opt_fzf_tag_passwd ;; - pascal) - additional_keybindings="--expect alt-f --expect alt-p" - additional_message=$kak_opt_fzf_tag_pascal ;; - perl) - additional_keybindings="--expect alt-c --expect alt-f --expect alt-l --expect alt-p --expect alt-s --expect alt-d" - additional_message=$kak_opt_fzf_tag_perl ;; - perl6) - additional_keybindings="--expect alt-c --expect alt-g --expect alt-m --expect alt-o --expect alt-p --expect alt-r --expect alt-u --expect alt-b --expect alt-s --expect alt-t" - additional_message=$kak_opt_fzf_tag_perl6 ;; - php) - additional_keybindings="--expect alt-c --expect alt-d --expect alt-f --expect alt-i --expect alt-l --expect alt-n --expect alt-t --expect alt-v --expect alt-a" - additional_message=$kak_opt_fzf_tag_php ;; - pod) - additional_keybindings="--expect alt-c --expect alt-s --expect ctrl-alt-s --expect alt-t" - additional_message=$kak_opt_fzf_tag_pod ;; - protobuf) - additional_keybindings="--expect alt-p --expect alt-m --expect alt-f --expect alt-e --expect alt-g --expect alt-s --expect ctrl-alt-R" - additional_message=$kak_opt_fzf_tag_protobuf ;; - puppetmanifest) - additional_keybindings="--expect alt-c --expect alt-d --expect alt-n --expect alt-r --expect alt-v" - additional_message=$kak_opt_fzf_tag_puppetmanifest ;; - python) - additional_keybindings="--expect alt-c --expect alt-f --expect alt-m --expect alt-v --expect ctrl-alt-i --expect alt-i --expect alt-x --expect alt-z --expect alt-l" - additional_message=$kak_opt_fzf_tag_python ;; - pythonloggingconfig) - additional_keybindings="--expect ctrl-alt-l --expect alt-q" - additional_message=$kak_opt_fzf_tag_pythonloggingconfig ;; - qemuhx) - additional_keybindings="--expect ctrl-alt-Q --expect alt-i" - additional_message=$kak_opt_fzf_tag_qemuhx ;; - qtmoc) - additional_keybindings="--expect alt-s --expect ctrl-alt-s --expect alt-p" - additional_message=$kak_opt_fzf_tag_qtmoc ;; - r) - additional_keybindings="--expect alt-f --expect alt-l --expect alt-s --expect alt-g --expect alt-v" - additional_message=$kak_opt_fzf_tag_r ;; - rspec) - additional_keybindings="--expect alt-d --expect alt-c" - additional_message=$kak_opt_fzf_tag_rspec ;; - rexx) - additional_keybindings="--expect alt-s" - additional_message=$kak_opt_fzf_tag_rexx ;; - robot) - additional_keybindings="--expect alt-t --expect alt-k --expect alt-v" - additional_message=$kak_opt_fzf_tag_robot ;; - rpmspec) - additional_keybindings="--expect alt-t --expect alt-m --expect alt-p --expect alt-g" - additional_message=$kak_opt_fzf_tag_rpmspec ;; - restructuredtext) - additional_keybindings="--expect alt-c --expect alt-s --expect ctrl-alt-s --expect alt-t --expect ctrl-alt-t" - additional_message=$kak_opt_fzf_tag_restructuredtext ;; - ruby) - additional_keybindings="--expect alt-c --expect alt-f --expect alt-m --expect ctrl-alt-s" - additional_message=$kak_opt_fzf_tag_ruby ;; - rust) - additional_keybindings="--expect alt-n --expect alt-s --expect alt-i --expect alt-c --expect ctrl-alt-F --expect ctrl-alt-G --expect ctrl-alt-T --expect ctrl-alt-V --expect ctrl-alt-m --expect ctrl-alt-M --expect ctrl-alt-E --expect ctrl-alt-p" - additional_message=$kak_opt_fzf_tag_rust ;; - scheme) - additional_keybindings="--expect alt-f --expect alt-s" - additional_message=$kak_opt_fzf_tag_scheme ;; - sh) - additional_keybindings="--expect alt-a --expect alt-f --expect alt-s --expect alt-h" - additional_message=$kak_opt_fzf_tag_sh ;; - slang) - additional_keybindings="--expect alt-f --expect alt-n" - additional_message=$kak_opt_fzf_tag_slang ;; - sml) - additional_keybindings="--expect alt-e --expect alt-f --expect alt-c --expect alt-s --expect alt-r --expect alt-t --expect alt-v" - additional_message=$kak_opt_fzf_tag_sml ;; - sql) - additional_keybindings="--expect alt-c --expect alt-d --expect alt-f --expect ctrl-alt-e --expect alt-l --expect ctrl-alt-l --expect ctrl-alt-p --expect alt-p --expect alt-r --expect alt-s --expect alt-t --expect ctrl-alt-t --expect alt-v --expect alt-i --expect alt-e --expect ctrl-alt-u --expect ctrl-alt-r --expect ctrl-alt-d --expect ctrl-alt-v --expect alt-n --expect ctrl-alt-X --expect ctrl-alt-Y --expect ctrl-alt-Z" - additional_message=$kak_opt_fzf_tag_sql ;; - systemdunit) - additional_keybindings="--expect alt-u" - additional_message=$kak_opt_fzf_tag_systemdunit ;; - tcl) - additional_keybindings="--expect alt-p --expect alt-n" - additional_message=$kak_opt_fzf_tag_tcl ;; - tcloo) - additional_keybindings="--expect alt-c --expect alt-m" - additional_message=$kak_opt_fzf_tag_tcloo ;; - tex) - additional_keybindings="--expect alt-p --expect alt-c --expect alt-s --expect alt-u --expect alt-b --expect ctrl-alt-p --expect ctrl-alt-g --expect alt-l --expect alt-i" - additional_message=$kak_opt_fzf_tag_tex ;; - ttcn) - additional_keybindings="--expect ctrl-alt-m --expect alt-t --expect alt-c --expect alt-d --expect alt-f --expect alt-s --expect ctrl-alt-c --expect alt-a --expect ctrl-alt-g --expect ctrl-alt-p --expect alt-v --expect ctrl-alt-t --expect alt-p --expect alt-m --expect alt-e" - additional_message=$kak_opt_fzf_tag_ttcn ;; - vera) - additional_keybindings="--expect alt-c --expect alt-d --expect alt-e --expect alt-f --expect alt-g --expect alt-i --expect alt-l --expect alt-m --expect alt-p --expect ctrl-alt-p --expect alt-s --expect alt-t --expect ctrl-alt-t --expect alt-v --expect alt-x --expect alt-h" - additional_message=$kak_opt_fzf_tag_vera ;; - verilog) - additional_keybindings="--expect alt-c --expect alt-e --expect alt-f --expect alt-m --expect alt-n --expect alt-p --expect alt-r --expect alt-t --expect alt-b" - additional_message=$kak_opt_fzf_tag_verilog ;; - systemverilog) - additional_keybindings="--expect alt-c --expect alt-e --expect alt-f --expect alt-m --expect alt-n --expect alt-p --expect alt-r --expect alt-t --expect alt-b --expect ctrl-alt-a --expect ctrl-alt-c --expect ctrl-alt-v --expect ctrl-alt-e --expect ctrl-alt-i --expect ctrl-alt-m --expect ctrl-alt-k --expect ctrl-alt-p --expect ctrl-alt-q --expect ctrl-alt-r --expect ctrl-alt-s --expect ctrl-alt-t" - additional_message=$kak_opt_fzf_tag_systemverilog ;; - vhdl) - additional_keybindings="--expect alt-c --expect alt-t --expect ctrl-alt-t --expect alt-r --expect alt-e --expect ctrl-alt-c --expect alt-d --expect alt-f --expect alt-p --expect ctrl-alt-p --expect alt-l" - additional_message=$kak_opt_fzf_tag_vhdl ;; - vim) - additional_keybindings="--expect alt-a --expect alt-c --expect alt-f --expect alt-m --expect alt-v --expect alt-n" - additional_message=$kak_opt_fzf_tag_vim ;; - windres) - additional_keybindings="--expect alt-d --expect alt-m --expect alt-i --expect alt-b --expect alt-c --expect alt-f --expect alt-v --expect alt-a" - additional_message=$kak_opt_fzf_tag_windres ;; - yacc) - additional_keybindings="--expect alt-l" - additional_message=$kak_opt_fzf_tag_yacc ;; - yumrepo) - additional_keybindings="--expect alt-r" - additional_message=$kak_opt_fzf_tag_yumrepo ;; - zephir) - additional_keybindings="--expect alt-c --expect alt-d --expect alt-f --expect alt-i --expect alt-l --expect alt-n --expect alt-t --expect alt-v --expect alt-a" - additional_message=$kak_opt_fzf_tag_zephir ;; - dbusintrospect) - additional_keybindings="--expect alt-i --expect alt-m --expect alt-s --expect alt-p" - additional_message=$kak_opt_fzf_tag_dbusintrospect ;; - glade) - additional_keybindings="--expect alt-i --expect alt-c --expect alt-h" - additional_message=$kak_opt_fzf_tag_glade ;; - maven2) - additional_keybindings="--expect alt-g --expect alt-a --expect alt-p --expect alt-r" - additional_message=$kak_opt_fzf_tag_maven2 ;; - plistxml) - additional_keybindings="--expect alt-k" - additional_message=$kak_opt_fzf_tag_plistxml ;; - relaxng) - additional_keybindings="--expect alt-e --expect alt-a --expect alt-n" - additional_message=$kak_opt_fzf_tag_relaxng ;; - svg) - additional_keybindings="--expect alt-i" - additional_message=$kak_opt_fzf_tag_svg ;; - xslt) - additional_keybindings="--expect alt-s --expect alt-p --expect alt-m --expect alt-n --expect alt-v" - additional_message=$kak_opt_fzf_tag_xslt ;; - yaml) - additional_keybindings="--expect alt-a" - additional_message=$kak_opt_fzf_tag_yaml ;; - ansibleplaybook) - additional_keybindings="--expect alt-p" - additional_message=$kak_opt_fzf_tag_ansibleplaybook ;; - *) - additional_keybindings= - additional_message= - ;; - esac - path=$PWD while [ "$path" != "$HOME" ]; do - if [ -e "./${kak_opt_tagfile:-tags}" ]; then + if [ -e "./$kak_opt_fzf_tag_file" ]; then break else cd .. path=$PWD fi done - if [ "$path" = "$HOME" ] && [ ! -e "./${kak_opt_tagfile:-tags}" ]; then - printf "%s\n" "echo -markup %{{Information}No '${kak_opt_tagfile:-tags}' found}" + + if [ "$path" = "$HOME" ] && [ ! -e "./$kak_opt_fzf_tag_file" ]; then + printf "%s\n" "echo -markup %{{Information}No '$kak_opt_fzf_tag_file' file found}" exit - elif [ "$path" = "$HOME" ] && [ -e "./${kak_opt_tagfile:-tags}" ]; then - printf "%s\n" "echo -markup %{{Information}'${kak_opt_tagfile:-tags}' found at $HOME. Check if it is right tag file}" + elif [ "$path" = "$HOME" ] && [ -e "./$kak_opt_fzf_tag_file" ]; then + printf "%s\n" "echo -markup %{{Information}'$kak_opt_fzf_tag_file' file found at $HOME. Check if it is right tag file}" fi - if [ ! -z "$1" ]; then - mode=$(printf "%s\n" "$additional_message" | grep ":" | awk '{$1=""; print}' | sed "s/\(.*\)/:\1/") + if [ -n "$1" ]; then cmd="cd $path; readtags -Q '(eq? \$kind \"$1\")' -l | cut -f1" else cmd="cd $path; readtags -l | cut -f1" fi - [ ! -z "${kak_client_env_TMUX}" ] && tmux_keybindings=" + + [ -n "${kak_client_env_TMUX}" ] && tmux_keybindings=" : open tag in horizontal split : open tag in vertical split" @@ -1226,13 +930,11 @@ define-command -hidden fzf-tag -params ..2 %{ evaluate-commands %sh{ : open tag in new buffer : open tag in new window" - [ ! -z "$additional_message" ] && message="$message $tmux_keybindings + message="$message$tmux_keybindings" -Additional filters for $kak_opt_filetype filetype: $additional_message" - - printf "%s\n" "info -title 'fzf tag$mode' '$message'" + printf "%s\n" "info -title 'fzf tag' '$message'" [ ! -z "${kak_client_env_TMUX}" ] && additional_flags="--expect ctrl-v --expect ctrl-s" - printf "%s\n" "set-option window ctagsfiles %{$path/${kak_opt_tagfile:-tags}}" + printf "%s\n" "set-option window ctagsfiles %{$path/$kak_opt_fzf_tag_file}" printf "%s\n" "fzf %{ctags-search} %{$cmd | awk '!a[\$0]++'} %{--expect ctrl-w $additional_flags $additional_keybindings}" }}