fishingz - fish 전용의 모든 파일 시스템 고속 액세서 (응용 설정)

fishingz의 고급 설정



현재, $HOME/.fishingz/init.fish 에서의 설정 변경은 구현할 수 없고, 소스 코드를 직접 변경할 필요가 있는 설정 항목에 대해 적는다.



 

1. 1. 검색 대상외의 파일 시스템을 변경한다



fishingz.fish 에서 다음을 변경하면 된다.
 

$HOME/.config/fish/functions/fishingz.fish
      # No searchable directories, when creating database
      set -g    FISHINGZ_EXCLUDE_FS         "/lost+found/" \
                                            "/snap/"       \
                                            "/proc/"       \
                                            "/sbin/"       \
                                            "/media/"      \
                                            "/root/"       \
                                            "/opt/"        \
                                            "/srv/"        \
                                            "/cdrom/"      \
                                            "/lib64/"      \
                                            "/mnt/"        \
                                            "/run/"        \
                                            "/tmp/"        \
                                            "/lib/"        \
                                            "/dev/"        \
                                            ""    # End of list

 

2. 2. 검색 대상외의 디렉토리를 변경한다



fishingz.fish 에서 다음을 변경하면 된다.
(초기 상태에서는 .git .cache .svn .CVS를 검색 대상에서 제외)
 

$HOME/.config/fish/functions/fishingz.fish
      set -g    FISHINGZ_EXCLUDE_DIR        "-o -name '.git'"     \
                                            "-o -name '.cache'"   \
                                            "-o -name '.svn'"     \
                                            "-o -name '.CVS'"     \
                                            ""    # End of list

 

3. 클립보드에 경로를 복사하는 키를 변경합니다.



fishingz.fish에서 다음 ctrl-e를 변경하면 됩니다. (자세한 내용은 fzf의 --bind 참조)
 

$HOME/.config/fish/functions/fishingz.fish
        if test ( which xclip )
          set ptr_RETURNED_PATH ( fishingz::DB::get_path::sort $basepoint | fzf --no-sort $FISHINGZ_FZF_COLOR --ansi -d'\t' --nth 2 \
                                    --bind 'ctrl-e:execute-silent( echo -n {} | \
                                    sed -n "s/^\[[[:alpha:]]\]\(.*\)/\1/p" | xclip   ; tput rc )+abort' )
        else if test ( which xsel )
          set ptr_RETURNED_PATH ( fishingz::DB::get_path::sort $basepoint | fzf --no-sort $FISHINGZ_FZF_COLOR --ansi -d'\t' --nth 2 \
                                    --bind 'ctrl-e:execute-silent( echo -n {} | \
                                    sed -n "s/^\[[[:alpha:]]\]\(.*\)/\1/p" | xsel -i ; tput rc )+abort' )
        else
          set ptr_RETURNED_PATH ( fishingz::DB::get_path::sort $basepoint | fzf --no-sort --ansi -d'\t' --nth 2 )
        end

 

4. 4. 파일 종류에 따라 사용하는 앱을 변경한다.



fishingz.fish 에서 아래의 file -b -i 의 반환값을 분기시켜 호출하는 앱을 정의하면 된다.
 

$HOME/.config/fish/functions/fishingz.fish
    function fishingz::command::opr_f --no-scope-shadowing \
    --description "When [f] is selected on the list"

      set -l  path  $argv[1]
      test ! -f $path ;and echo "$path: No such file" >&2
      set -l  ftype ( file -b -i $path )

      switch $ftype

        case "text/html*"

좋은 웹페이지 즐겨찾기