Reduce the amount of work done in shell and the hypotheses on gvim handling a server and such, make it work with any vim implementation
This commit is contained in:
parent
4f4afa90d0
commit
5f31ff4891
2 changed files with 22 additions and 12 deletions
13
titfiche.sh
13
titfiche.sh
|
@ -1,11 +1,5 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
[ -n "${TITFICHE_VIM_INSTANCE}" ] || TITFICHE_VIM_INSTANCE="TITFICHE"
|
|
||||||
REMOTE=" --remote"
|
|
||||||
gvim --serverlist | grep -q "${TITFICHE_VIM_INSTANCE}" || REMOTE=''
|
|
||||||
EDITOR="gvim --servername ${TITFICHE_VIM_INSTANCE}${REMOTE}"
|
|
||||||
export TITFICHE_MODE=1
|
|
||||||
|
|
||||||
if [ -z "${TITFICHE_HOME}" ]
|
if [ -z "${TITFICHE_HOME}" ]
|
||||||
then
|
then
|
||||||
export TITFICHE_HOME="${XDG_CONFIG_HOME:-${HOME}/.config}/titfiche"
|
export TITFICHE_HOME="${XDG_CONFIG_HOME:-${HOME}/.config}/titfiche"
|
||||||
|
@ -15,11 +9,8 @@ fi
|
||||||
|
|
||||||
if [ -n "${1}" ]
|
if [ -n "${1}" ]
|
||||||
then
|
then
|
||||||
mkdir "${TITFICHE_HOME}"
|
|
||||||
$EDITOR "${1}"
|
$EDITOR "${1}"
|
||||||
else
|
else
|
||||||
ID="$(date "+%Y/%m/%d/%H:%M")"
|
mkdir -p "${TITFICHE_HOME}"
|
||||||
mkdir -p "${TITFICHE_HOME}/${ID%/*}"
|
$EDITOR "${TITFICHE_HOME}" -c "call NewTitfiche()"
|
||||||
|
|
||||||
$EDITOR -c "normal A# /${ID} " -c 'startinsert!' "${TITFICHE_HOME}/${ID}.md"
|
|
||||||
fi
|
fi
|
||||||
|
|
21
titfiche.vim
21
titfiche.vim
|
@ -1,8 +1,27 @@
|
||||||
if $TITFICHE_MODE
|
if exists("$TITFICHE_HOME") && expand('%:p') =~ $TITFICHE_HOME
|
||||||
|
function! NewTitfiche()
|
||||||
|
let dir = strftime("%Y/%m/%d")
|
||||||
|
call mkdir(dir, 'p')
|
||||||
|
let zId = dir . '/' . strftime("%H:%M")
|
||||||
|
edit `=zId . ".md"`
|
||||||
|
call append(0, "# /" . zId . " ")
|
||||||
|
normal 1G$
|
||||||
|
startinsert!
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! MkLink(p)
|
||||||
|
call mkdir(fnamemodify(a:p, ':h'), 'p')
|
||||||
|
call system('ln ' . expand('%:S') . ' ' . fnamemodify(a:p, ':S'))
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
command! -nargs=1 -complete=file_in_path Tag call MkLink(<f-args>)
|
||||||
|
|
||||||
set isfname+=:
|
set isfname+=:
|
||||||
set includeexpr=substitute(v:fname,'/','','')
|
set includeexpr=substitute(v:fname,'/','','')
|
||||||
cd $TITFICHE_HOME
|
cd $TITFICHE_HOME
|
||||||
nnoremap <C-l> "zciw(/<C-r>#)<Esc>%i[<C-r>z]<Esc>%
|
nnoremap <C-l> "zciw(/<C-r>#)<Esc>%i[<C-r>z]<Esc>%
|
||||||
vnoremap <C-l> "zc(/<C-r>#)<Esc>%i[<C-r>z]<Esc>%
|
vnoremap <C-l> "zc(/<C-r>#)<Esc>%i[<C-r>z]<Esc>%
|
||||||
inoremap <C-l> (/<C-r>#)<Esc>%i[]<Left>
|
inoremap <C-l> (/<C-r>#)<Esc>%i[]<Left>
|
||||||
|
nnoremap <C-n> :call NewTitfiche()<CR>
|
||||||
|
nnoremap <C-t> :Tag<Space>
|
||||||
endif
|
endif
|
||||||
|
|
Loading…
Reference in a new issue