@@ -19,6 +19,11 @@ INTERFACE |fern-interface|
1919 FUNCTION | fern-function |
2020 AUTOCMD | fern-autocmd |
2121 HIGHLIGHT | fern-highlight |
22+ MAPPING | fern-mapping |
23+ GLOBAL | fern-mapping-global |
24+ FILE | fern-mapping-file |
25+ DICT | fern-mapping-dict |
26+ GLOSSARY | fern-glossary |
2227CHANGELOG | fern-changelog |
2328
2429
@@ -631,6 +636,336 @@ FernWindowSelectStatusLine *hl-FernWindowSelectStatusLine*
631636 through "open:select" action.
632637
633638
639+ =============================================================================
640+ MAPPING *fern-mapping*
641+
642+ As described in | fern-action | , some mappings in fern are used as action.
643+ See | fern-action | for more detail.
644+
645+ -----------------------------------------------------------------------------
646+ GLOBAL *fern-mapping-global*
647+
648+ <Plug> (fern-action-zoom:half)
649+ Zoom width of the drawer style fern to half of the global width.
650+ The original window width will be restored once user leave the window.
651+ It only works on a drawer style fern window.
652+
653+ <Plug> (fern-action-zoom:full)
654+ Zoom width of the drawer style fern to full of the global width.
655+ The original window width will be restored once user leave the window.
656+ It only works on a drawer style fern window.
657+
658+ <Plug> (fern-action-hidden-set)
659+ Show hidden nodes. For example hidden nodes in file:// scheme is a
660+ file or directory starts from '.' character.
661+
662+ <Plug> (fern-action-hidden-unset)
663+ Hide hidden nodes. For example hidden nodes in file:// scheme is a
664+ file or directory starts from '.' character.
665+
666+ <Plug> (fern-action-hidden-unset)
667+ Toggle hidden nodes. For example hidden nodes in file:// scheme is a
668+ file or directory starts from '.' character.
669+
670+ <Plug> (fern-action-include)
671+ Open a prompt to enter include filter. Users can type a | pattern | to
672+ filter nodes recursively.
673+
674+ <Plug> (fern-action-exclude)
675+ Open a prompt to enter exclude filter. Users can type a | pattern | to
676+ filter nodes recursively.
677+
678+ <Plug> (fern-action-mark-clear)
679+ Clear existing marks.
680+
681+ <Plug> (fern-action-mark-toggle)
682+ Toggle marks on cursor node(s).
683+
684+ <Plug> (fern-action-mark-set)
685+ Set marks on cursor node(s).
686+
687+ <Plug> (fern-action-mark-unset)
688+ Unset marks on cursor node(s).
689+
690+ <Plug> (fern-action-debug)
691+ Echo debug information of a cursor node.
692+
693+ <Plug> (fern-action-reload)
694+ Reload on a cursor node and its children.
695+
696+ <Plug> (fern-action-expand)
697+ Expand on a cursor node.
698+
699+ <Plug> (fern-action-collapse)
700+ Collapse on a cursor node.
701+
702+ <Plug> (fern-action-reveal)
703+ Open a prompt to reveal a node in a tree.
704+
705+ <Plug> (fern-action-enter)
706+ Open a new fern buffer which root node is a cursor node. In other
707+ word, get enter the directory.
708+
709+ <Plug> (fern-action-leave)
710+ Open a new fern buffer which root node is a parent node of the current
711+ root node. In other word, go up directory.
712+
713+ <Plug> (fern-action-open:select)
714+ Open a cursor node or marked nodes through "window selector"
715+ (| fern-glofern-glossary-window-selector | .)
716+
717+ <Plug> (fern-action-open:split)
718+ <Plug> (fern-action-open:vsplit)
719+ <Plug> (fern-action-open:tabedit)
720+ Open a cursor node or marked nodes with a corresponding command.
721+ The command will be applied on an "anchor" window when invoked from a
722+ drawer style fern (| fern-glossary-anchor | .)
723+
724+ <Plug> (fern-action-edit-or-error)
725+ Open a cursor node or marked nodes with | edit | command or fallback
726+ to print an error.
727+ Note that when 'hidden' has set or 'bufhidden' is "hide", the | edit |
728+ command will never fails.
729+
730+ <Plug> (fern-action-open:edit-or-split)
731+ <Plug> (fern-action-open:edit-or-vsplit)
732+ <Plug> (fern-action-open:edit-or-tabedit)
733+ Open a cursor node or marked nodes with | edit | command or fallback
734+ to a corresponding command.
735+ Note that when 'hidden' has set or 'bufhidden' is "hide", the | edit |
736+ command will never fails.
737+
738+ <Plug> (fern-action-open:above)
739+ <Plug> (fern-action-open:left)
740+ <Plug> (fern-action-open:below)
741+ <Plug> (fern-action-open:right)
742+ Open a cursor node or marked nodes on a corresponding direction
743+ from an "anchor" window.
744+ The command will be applied on the anchor window when invoked from a
745+ drawer style fern (| fern-glossary-anchor | .)
746+
747+ <Plug> (fern-action-open:top)
748+ <Plug> (fern-action-open:leftest)
749+ <Plug> (fern-action-open:bottom)
750+ <Plug> (fern-action-open:rightest)
751+ Open a cursor node or marked nodes on a edge of a corresponding
752+ direction from an "anchor" window.
753+ The command will be applied on the anchor window when invoked from a
754+ drawer style fern (| fern-glossary-anchor | .)
755+
756+ <Plug> (fern-action-open:side)
757+ Open a cursor node or marked nodes on the right side of the current
758+ window. The behavior is slightly different between a drawer style fern
759+ window and a split style fern window due to the presence of "anchor".
760+
761+ <Plug> (fern-action-open-or-enter)
762+ Invoke "open" action on a leaf node and "enter" action on a branch
763+ node.
764+
765+ <Plug> (fern-action-open-or-expand)
766+ Invoke "open" action on a leaf node and "expand" action on a branch
767+ node.
768+
769+ <Plug> (fern-action-open:edit)
770+ An alias to "open:edit-or-error" action. Users can overwrite this
771+ mapping to change the default behavior of "open:edit" action like:
772+ >
773+ nmap <buffer>
774+ \ <Plug>(fern-action-open:edit)
775+ \ <Plug>(fern-action-open:edit-or-tabedit)
776+ <
777+ <Plug> (fern-action-open)
778+ An alias to "open:edit" action. Users can overwrite this mapping to
779+ change the default behavior of "open" action like:
780+ >
781+ nmap <buffer>
782+ \ <Plug>(fern-action-open)
783+ \ <Plug>(fern-action-open:select)
784+ <
785+ <Plug> (fern-action-cancel)
786+ Cancel tree rendering.
787+
788+ <Plug> (fern-action-redraw)
789+ Redraw tree.
790+
791+ <Plug> (fern-wait)
792+ Wait a previous asynchronous action to continue asynchronous actions
793+ sequentially.
794+ Note this is not action.
795+
796+ -----------------------------------------------------------------------------
797+ FILE *fern-mapping-file*
798+
799+ The following mappings/actions are only available on file:// scheme.
800+
801+ <Plug> (fern-action-new-file)
802+ Open a prompt to ask a path and create a file of the input path from
803+ the path of a cursor node.
804+ Any intermediate directories of the destination will be created.
805+
806+ <Plug> (fern-action-new-dir)
807+ Open a prompt to ask a path and create a directory of the input path
808+ from the path of a cursor node.
809+ Any intermediate directories of the destination will be created.
810+
811+ <Plug> (fern-action-copy)
812+ Open a prompt to ask a path and copy a file/directory of the cursor
813+ node or marked node path(s) to the input path(s).
814+ Any intermediate directories of the destination will be created.
815+ The prompt will repeatedly open if multiple nodes has marked.
816+
817+ <Plug> (fern-action-move)
818+ Open a prompt to ask a path and move a file/directory of the cursor
819+ node or marked node path(s) to the input path(s).
820+ Any intermediate directories of the destination will be created.
821+ The prompt will repeatedly open if multiple nodes has marked.
822+
823+ <Plug> (fern-action-trash)
824+ Open a prompt to ask if fern can send the cursor node or marked nodes
825+ to the system trash-bin. It uses the following implementations to send
826+ the node(s) into system trash-bin.
827+ OS Requirement~
828+ macOS: osascript (OS builtin)
829+ Windows: PowerShell (OS builtin)
830+ Linux: trash-ci or gomi (Users need to install)
831+ https://github.com/andreafrancia/trash-cli
832+ https://github.com/b4b4r07/gomi
833+ Note that the action fails without removing the files/directories if
834+ no requirement exists on Linux.
835+
836+ <Plug> (fern-action-remove)
837+ Open a prompt to ask if fern can DELETE the cursor node or marked
838+ nodes. BE CAREFUL with this action while it DELETE the file/direcoty
839+ and users cannot restore (like "rm" in terminal.)
840+
841+ <Plug> (fern-action-cd:root)
842+ <Plug> (fern-action-lcd:root)
843+ <Plug> (fern-action-tcd:root)
844+ Invoke | :cd | , | :lcd | , or | :tcd | command on the path of the root node.
845+
846+ <Plug> (fern-action-cd:cursor)
847+ <Plug> (fern-action-lcd:cursor)
848+ <Plug> (fern-action-tcd:cursor)
849+ Invoke | :cd | , | :lcd | , or | :tcd | command on the path of a cursor node.
850+
851+ <Plug> (fern-action-cd)
852+ <Plug> (fern-action-lcd)
853+ <Plug> (fern-action-tcd)
854+ An alias to "cd:cursor", "lcd:cursor", and "tcd:cursor" action.
855+ Users can overwrite this mapping to change the default behavior like:
856+ >
857+ nmap <buffer>
858+ \ <Plug>(fern-action-cd)
859+ \ <Plug>(fern-action-cd:root)
860+ <
861+ <Plug> (fern-action-clipboard-copy)
862+ Copy a cursor node or marked nodes into an internal clipboard.
863+ Actual copy happens when users paste the nodes with "clipboard-paste"
864+ action.
865+ Note that this action has NO-relation with the system clipboard.
866+
867+ <Plug> (fern-action-clipboard-move)
868+ Move a cursor node or marked nodes into an internal clipboard.
869+ Actual move happens when users paste the nodes with "clipboard-paste"
870+ action.
871+ Note that this action has NO-relation with the system clipboard.
872+
873+ <Plug> (fern-action-clipboard-paste)
874+ Paste copied/moved nodes on a cursor node. It does not clear the
875+ internal clipboard so users can copy -> paste -> paste -> ...
876+ Note that this action has NO-relation with the system clipboard.
877+
878+ <Plug> (fern-action-clipboard-clear)
879+ Clear the internal clipboard.
880+ Note that this action has NO-relation with the system clipboard.
881+
882+ <Plug> (fern-action-grep)
883+ Open a prompt to ask a grep pattern and execute grep command under the
884+ cursor node. It respects the value of 'grepprg' and 'grepformat' .
885+
886+ <Plug> (fern-action-rename:select)
887+ <Plug> (fern-action-rename:split)
888+ <Plug> (fern-action-rename:vsplit)
889+ <Plug> (fern-action-rename:tabedit)
890+ <Plug> (fern-action-rename:above)
891+ <Plug> (fern-action-rename:left)
892+ <Plug> (fern-action-rename:below)
893+ <Plug> (fern-action-rename:right)
894+ <Plug> (fern-action-rename:top)
895+ <Plug> (fern-action-rename:leftest)
896+ <Plug> (fern-action-rename:bottom)
897+ <Plug> (fern-action-rename:rightest)
898+ <Plug> (fern-action-rename:edit-or-error)
899+ <Plug> (fern-action-rename:edit-or-split)
900+ <Plug> (fern-action-rename:edit-or-vsplit)
901+ <Plug> (fern-action-rename:edit-or-tabedit)
902+ <Plug> (fern-action-rename:edit)
903+ <Plug> (fern-action-rename:side)
904+ <Plug> (fern-action-rename)
905+ Open "renamer" (| fern-glossary-renamer | ) for a cursor node or marked
906+ nodes in similar manners of global "open" actions.
907+
908+ <Plug> (fern-action-open:system)
909+ Open a cursor node or marked nodes on a default program of the system.
910+ For example, a cursor node points a PDF file, an application "Preview"
911+ will open that file in macOS.
912+
913+ <Plug> (fern-action-terminal:select)
914+ <Plug> (fern-action-terminal:split)
915+ <Plug> (fern-action-terminal:vsplit)
916+ <Plug> (fern-action-terminal:tabedit)
917+ <Plug> (fern-action-terminal:above)
918+ <Plug> (fern-action-terminal:left)
919+ <Plug> (fern-action-terminal:below)
920+ <Plug> (fern-action-terminal:right)
921+ <Plug> (fern-action-terminal:top)
922+ <Plug> (fern-action-terminal:leftest)
923+ <Plug> (fern-action-terminal:bottom)
924+ <Plug> (fern-action-terminal:rightest)
925+ <Plug> (fern-action-terminal:edit-or-error)
926+ <Plug> (fern-action-terminal:edit-or-split)
927+ <Plug> (fern-action-terminal:edit-or-vsplit)
928+ <Plug> (fern-action-terminal:edit-or-tabedit)
929+ <Plug> (fern-action-terminal:edit)
930+ <Plug> (fern-action-terminal:side)
931+ <Plug> (fern-action-terminal)
932+ Open terminal window(s) on or on parent of a cursor node or marked
933+ nodes in similar manners of global "open" actions.
934+
935+ -----------------------------------------------------------------------------
936+ DICT *fern-mapping-dict*
937+
938+ The following mappings/actions are only available on dict:// scheme.
939+
940+ TBW
941+
942+
943+ =============================================================================
944+ GLOSSARY *fern-glossary*
945+
946+ *fern-glossary-anchor*
947+ "anchor" A nearest suitable window from a drawer style fern
948+ window. "suitable" window is a window which is
949+ 1. not quickfix window
950+ 2. not location-list window
951+ 3. not 'winfixwidth'
952+ 4. not 'winfixheight'
953+ 5. not 'previewwindow'
954+ Usually a right window by the drawer become "anchor".
955+
956+ *fern-glossary-renamer*
957+ "renamer" A special buffer which lists paths. Users can modify
958+ the paths and save. Once user save the content with
959+ | :write | command, corresponding rename process will
960+ invokes (e.g. file/directory rename on file:// scheme)
961+
962+ *fern-glossary-window-selector*
963+ "window selector" A special prompt to select window to open a node.
964+ Once user hit a window indicator displayed under each
965+ window, a content of the node will be opened at that
966+ window.
967+
968+
634969=============================================================================
635970CHANGELOG *fern-changelog*
636971
0 commit comments