From eb735b59065becf2cf9a0690254e2f6af998f6dd Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 2 Feb 2019 20:14:29 +0100 Subject: tv vim-syntax-nix-nested: add writer{Ext,Name} --- tv/2configs/vim.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 3794628..9f78d6e 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -250,6 +250,9 @@ let { def = k: ''${k}[ \t\r\n]*=''; writer = k: ''write${k}[^ \t\r\n]*[ \t\r\n]*\("[^"]*"\|[a-z]\+\)''; + writerExt = k: writerName ''[^"]*\.${k}''; + writerName = k: ''write[^ \t\r\n]*[ \t\r\n]*"${k}"''; + in { c = {}; cabal = {}; @@ -257,7 +260,7 @@ let { haskell = {}; jq.extraStart = alts [ (writer "Jq") - ''write[^ \t\r\n]*[ \t\r\n]*"[^"]*\.jq"'' + (writerExt "jq") ]; javascript.extraStart = ''/\* js \*/''; lua = {}; @@ -287,8 +290,10 @@ let { (writer (alts (map capitalize shells))) ]; yaml = {}; - vim.extraStart = - ''write[^ \t\r\n]*[ \t\r\n]*"\(\([^"]*\.\)\?vimrc\|[^"]*\.vim\)"''; + vim.extraStart = alts [ + (writerExt "vim") + (writerName ''\([^"]*\.\)\?vimrc'') + ]; xdefaults = {}; }))} -- cgit v1.2.3 From 35091bbf91cc997f67aa7289be29a9115337fd99 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 2 Feb 2019 20:20:44 +0100 Subject: tv vim-syntax-nix-nested: detect .vim".text --- tv/2configs/vim.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 9f78d6e..7e37ef3 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -130,14 +130,14 @@ let { ''; }))) ((rtp: rtp // { inherit rtp; }) (pkgs.write "vim-syntax-nix-nested" { - "/syntax/haskell.vim".text = /* vim */ '' + "/syntax/haskell.vim".text = '' syn region String start=+\[[[:alnum:]]*|+ end=+|]+ hi link ConId Identifier hi link VarId Identifier hi link hsDelimiter Delimiter ''; - "/syntax/nix.vim".text = /* vim */ '' + "/syntax/nix.vim".text = '' "" Quit when a (custom) syntax file was already loaded "if exists("b:current_syntax") " finish @@ -291,6 +291,7 @@ let { ]; yaml = {}; vim.extraStart = alts [ + (def ''"[^"]*\.vim"\.text'') (writerExt "vim") (writerName ''\([^"]*\.\)\?vimrc'') ]; @@ -334,7 +335,7 @@ let { set isk=@,48-57,_,192-255,-,' ''; - "/syntax/sed.vim".text = /* vim */ '' + "/syntax/sed.vim".text = '' syn region sedBranch \ matchgroup=sedFunction start="T" \ matchgroup=sedSemicolon end=";\|$" -- cgit v1.2.3 From 51e88ec80f5a4b4e38029698608124e8ff2cfe70 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 2 Feb 2019 20:24:11 +0100 Subject: tv vim haskell: isk+=' --- tv/2configs/vim.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 7e37ef3..fe14828 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -129,6 +129,19 @@ let { command! -n=0 -bar ShowSyntax :call ShowSyntax() ''; }))) + ((rtp: rtp // { inherit rtp; }) (pkgs.write "vim-tv" { + # + # Haskell + # + "/ftplugin/haskell.vim".text = '' + if exists("g:vim_tv_ftplugin_haskell_loaded") + finish + endif + let g:vim_tv_ftplugin_haskell_loaded = 1 + + setlocal iskeyword+=' + ''; + })) ((rtp: rtp // { inherit rtp; }) (pkgs.write "vim-syntax-nix-nested" { "/syntax/haskell.vim".text = '' syn region String start=+\[[[:alnum:]]*|+ end=+|]+ -- cgit v1.2.3 From 79321442836ffdc6a3c6b3d0f5f2bf67437458e9 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 2 Feb 2019 21:21:48 +0100 Subject: tv vim: add TODO ft --- tv/2configs/vim.nix | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index fe14828..de843a3 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -141,6 +141,43 @@ let { setlocal iskeyword+=' ''; + # + # TODO + # + "/ftdetect/todo.vim".text = '' + au BufRead,BufNewFile TODO set ft=todo + ''; + "/ftplugin/todo.vim".text = '' + setlocal foldmethod=syntax + ''; + "/syntax/todo.vim".text = '' + syn match Comment /#.*/ + + syn match todoDate /^[1-9]\S*/ + \ nextgroup=todoSummary + + syn region todoSummary + \ contained + \ contains=todoTag + \ start="." end="$\n" + \ nextgroup=todoBlock + + syn match todoTag /\[[a-z]\+\]/hs=s+1,he=e-1 + \ contained + + syn region todoBlock + \ contained + \ contains=Comment + \ fold + \ start="^[^1-9]" end="^[1-9]"re=s-1,he=s-1,me=s-1 + + syn sync minlines=1000 + + hi todoDate ctermfg=255 + hi todoSummary ctermfg=229 + hi todoBlock ctermfg=248 + hi todoTag ctermfg=217 + ''; })) ((rtp: rtp // { inherit rtp; }) (pkgs.write "vim-syntax-nix-nested" { "/syntax/haskell.vim".text = '' -- cgit v1.2.3 From 280a66c3a57b35dbae9e97c45a2a0fef9c1f4e8c Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 2 Feb 2019 23:15:16 +0100 Subject: tv vim todo: allow A-Z in tags --- tv/2configs/vim.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index de843a3..575a3bc 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -162,7 +162,7 @@ let { \ start="." end="$\n" \ nextgroup=todoBlock - syn match todoTag /\[[a-z]\+\]/hs=s+1,he=e-1 + syn match todoTag /\[[A-Za-z]\+\]/hs=s+1,he=e-1 \ contained syn region todoBlock -- cgit v1.2.3 From 244f1551f9863330418dcdfd3a5385b3f6763c2f Mon Sep 17 00:00:00 2001 From: tv Date: Sun, 3 Feb 2019 13:39:30 +0100 Subject: tv vim todo: form feed ends a block --- tv/2configs/vim.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 575a3bc..9942ff6 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -169,7 +169,7 @@ let { \ contained \ contains=Comment \ fold - \ start="^[^1-9]" end="^[1-9]"re=s-1,he=s-1,me=s-1 + \ start="^[^1-9]" end="^[1-9 ]"re=s-1,he=s-1,me=s-1 syn sync minlines=1000 -- cgit v1.2.3 From 7f11da400dab2ce180af799c257dff1ff2996781 Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 5 Feb 2019 11:00:57 +0100 Subject: tv bash: use fzf-history --- tv/2configs/bash/default.nix | 2 ++ 1 file changed, 2 insertions(+) (limited to 'tv/2configs') diff --git a/tv/2configs/bash/default.nix b/tv/2configs/bash/default.nix index d767393..86e5598 100644 --- a/tv/2configs/bash/default.nix +++ b/tv/2configs/bash/default.nix @@ -27,6 +27,8 @@ with import ; export NIX_PATH="stockholm=$HOME/stockholm:$NIX_PATH" ;; esac + + ${pkgs.bash-fzf-history.bind} ''; promptInit = /* sh */ '' case $UID in -- cgit v1.2.3 From 483c26af7cb8ae71fc65704a2062ec2ca618a1ac Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 5 Feb 2019 11:06:17 +0100 Subject: tv bash: add timestamps to histfile --- tv/2configs/bash/default.nix | 1 + 1 file changed, 1 insertion(+) (limited to 'tv/2configs') diff --git a/tv/2configs/bash/default.nix b/tv/2configs/bash/default.nix index 86e5598..42914e0 100644 --- a/tv/2configs/bash/default.nix +++ b/tv/2configs/bash/default.nix @@ -8,6 +8,7 @@ with import ; HISTCONTROL='erasedups:ignorespace' HISTSIZE=65536 HISTFILESIZE=$HISTSIZE + HISTTIMEFORMAT= shopt -s checkhash shopt -s histappend histreedit histverify -- cgit v1.2.3 From c6ca7ead112fe9aff4658f551d8b47f94608eff8 Mon Sep 17 00:00:00 2001 From: tv Date: Thu, 7 Feb 2019 19:04:19 +0100 Subject: tv gitrepos: add flameshot-once --- tv/2configs/gitrepos.nix | 3 +++ 1 file changed, 3 insertions(+) (limited to 'tv/2configs') diff --git a/tv/2configs/gitrepos.nix b/tv/2configs/gitrepos.nix index 725ddef..95ab75b 100644 --- a/tv/2configs/gitrepos.nix +++ b/tv/2configs/gitrepos.nix @@ -47,6 +47,9 @@ let { disko = { cgit.desc = "declarative partitioning and formatting tool"; }; + flameshot-once = { + cgit.desc = "flameshot runner that automatically starts/stops the daemon"; + }; fswm = { cgit.desc = "simple full screen window manager"; }; -- cgit v1.2.3 From ed3ada7b3cf1dd06d3cc7410f887e2059efd37cc Mon Sep 17 00:00:00 2001 From: tv Date: Fri, 8 Feb 2019 18:02:29 +0100 Subject: tv xmonad: add dbus --- tv/2configs/xserver/default.nix | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/xserver/default.nix b/tv/2configs/xserver/default.nix index f68e8e6..051e12e 100644 --- a/tv/2configs/xserver/default.nix +++ b/tv/2configs/xserver/default.nix @@ -48,10 +48,24 @@ in { systemd.services.xmonad = let xmonad = "${pkgs.haskellPackages.xmonad-tv}/bin/xmonad"; - xmonad-prepare = pkgs.writeDash "xmonad-prepare" '' + xmonad-start = pkgs.writeDash "xmonad-start" '' ${pkgs.coreutils}/bin/mkdir -p "$XMONAD_CACHE_DIR" ${pkgs.coreutils}/bin/mkdir -p "$XMONAD_CONFIG_DIR" ${pkgs.coreutils}/bin/mkdir -p "$XMONAD_DATA_DIR" + + f=$HOME/.dbus/session-bus/$(${pkgs.coreutils}/bin/cat /etc/machine-id)-${ + toString config.services.xserver.display + } + if test -e "$f" && + . "$f" && + ${pkgs.coreutils}/bin/kill -0 "$DBUS_SESSION_BUS_PID" + then + export DBUS_SESSION_BUS_ADDRESS + else + eval "$(${pkgs.dbus.lib}/bin/dbus-launch --sh-syntax)" + fi + + exec ${xmonad} ''; xmonad-ready = pkgs.writeDash "xmonad-ready" '' { @@ -97,8 +111,7 @@ in { "/run/wrappers" # for su ]; serviceConfig = { - ExecStartPre = "@${xmonad-prepare} xmonad-prepare"; - ExecStart = "@${xmonad} xmonad-${currentSystem}"; + ExecStart = "@${xmonad-start} xmonad-${currentSystem}"; ExecStop = "@${xmonad} xmonad-${currentSystem} --shutdown"; SyslogIdentifier = "xmonad"; User = cfg.user.name; -- cgit v1.2.3 From 04b6533c7e4407783118beee22cb4d466a7e049e Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 16 Feb 2019 19:22:24 +0100 Subject: Revert "tv: add deploy alias" This reverts commit 288f895abbf1ada7d5cc3979fe51ac29c3148657. --- tv/2configs/default.nix | 7 ------- 1 file changed, 7 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/default.nix b/tv/2configs/default.nix index e18ba31..ac0a6af 100644 --- a/tv/2configs/default.nix +++ b/tv/2configs/default.nix @@ -80,13 +80,6 @@ with import ; ls = "ls -h --color=auto --group-directories-first"; dmesg = "dmesg -L --reltime"; view = "vim -R"; - - deploy = pkgs.writeDash "deploy" '' - set -eu - cd ~/stockholm - export SYSTEM="$1" - exec nix-shell -I stockholm="$PWD" --run 'deploy --system="$SYSTEM"' - ''; }; environment.variables = { -- cgit v1.2.3 From a7234ccaeadbdffcb88bc3ea4dd7b0d7adbbc48d Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 16 Feb 2019 19:29:25 +0100 Subject: tv vim: add todoComment --- tv/2configs/vim.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 9942ff6..20e1d65 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -151,7 +151,7 @@ let { setlocal foldmethod=syntax ''; "/syntax/todo.vim".text = '' - syn match Comment /#.*/ + syn match todoComment /#.*/ syn match todoDate /^[1-9]\S*/ \ nextgroup=todoSummary @@ -173,6 +173,7 @@ let { syn sync minlines=1000 + hi link todoComment Comment hi todoDate ctermfg=255 hi todoSummary ctermfg=229 hi todoBlock ctermfg=248 -- cgit v1.2.3 From c572737d856f2fd12632c7b2f755dfcaae7dae32 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 16 Feb 2019 19:29:40 +0100 Subject: tv vim: add xmodmap --- tv/2configs/vim.nix | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 20e1d65..2dd2e74 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -347,6 +347,7 @@ let { (writerName ''\([^"]*\.\)\?vimrc'') ]; xdefaults = {}; + xmodmap = {}; }))} " Clear syntax that interferes with nixINSIDE_DOLLAR_CURLY. @@ -392,6 +393,9 @@ let { \ matchgroup=sedSemicolon end=";\|$" \ contains=sedWhitespace ''; + "/syntax/xmodmap.vim".text = '' + syn match xmodmapComment /^\s*!.*/ + ''; })) ]; -- cgit v1.2.3 From 51f21751e7e627cd8e3e7f3656eb269261d6fd06 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 16 Feb 2019 19:30:37 +0100 Subject: tv vim: map :ShowSyntax --- tv/2configs/vim.nix | 2 ++ 1 file changed, 2 insertions(+) (limited to 'tv/2configs') diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 2dd2e74..a45e040 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -490,6 +490,8 @@ let { inoremap :tabp inoremap :tabn + noremap :ShowSyntax + " noremap Oa | noremap! Oa noremap Ob | noremap! Ob -- cgit v1.2.3