Commit graph

698 commits

Author SHA1 Message Date
49cacfe787 Refactor powermenu to rofi modus 2019-09-05 16:21:53 +02:00
3d9ea5cffe Configure rofi-powermenu and lockscreen script
Use rofi-powermenu to show options for suspend,reboot, shutdown,
lockscreen, log out. Can be invoked with <M-backspace>. Other power
option shortcuts have been removed from quick access through sxhkd or
i3. Lockscreen can still be quickly set with <M-x>.

Lockscreen now resides in its own script to provide one source of truth,
and in case it is further customized in the future.
2019-09-05 13:31:42 +02:00
16cb8f092e Add dmenu theme 2019-09-05 13:03:51 +02:00
199fbdae4d Add rofi theme scaffolding
Themes are structured in two parts: layout and colorschemes. Both can be
set independently from each other. Layouts can make use of anchored
color values (@background, @background-focus,.. look at colorscheme
files for all available values). Colorscheme files then translate the
values into actual colorcodes.

That way, the colorscheme for all layouts can be changed with one
setting, or independently of each other. Layouts try to specify some
often used structures for rofi menus - right now there is a horizontal
list and a fullscreen options selection (which can make use of icon
fonts).

Any global theme changes should be done in settings.rasi. Any global
function changes can still be done in config.rasi. A rofi-powermenu has
been added as an example of using the theming structure. The powermenu
script loads rofi with the powermenu.rasi theme enabled. The powermenu
theme loads the fullscreen options layout, which in turn loads the
vertical list layout, which loads settings, which sets the correct
colors. Idea and original structure from:
https://gitlab.com/vahnrr/rofi-menus
2019-09-05 10:45:32 +02:00
264e095224 Add initial rofi-bangs script
Can be executed with rofi-bang. It will take a comma-separated list of
commands (for now statically sourced from rofi config dir), show labels
and 'bangs' for them (in the manner of !c or !yt) which, if typed will
instantly execute their command. In this manner, it becomes possible to
create a quickly accessible menu using rofi.

E.g. we could have !b to search bookmarks. As soon as !b is typed the
'bang' instance of rofi exits and executes the associated command. If
the command starts up another, visually identical, rofi instance with a
preselection of different user bookmarks, it appears as if we just
jumped into a bookmark list in the same rofi instance.

Of course, the commands can be anything. They don't have to invoke more
rofi instances.
2019-09-04 23:04:07 +02:00
f1bcae1767 Add simple rofi config file 2019-09-04 19:47:13 +02:00
a6c133feb9 Merge branch '57-unify-fuzzy-finding-in-vim-and-the-commandline' into 'master'
Resolve "Unify fuzzy finding in vim and the commandline"

Closes #57

See merge request marty-oehme/dotfiles!21
2019-09-04 17:32:11 +00:00
7e45d94997 Add fuzzy tools to vim and shell
In vim:
Use <leader>c to insert a bibtex reference in your text. By default it
is a pandoc reference (@bibref), but it can be changed to latex style
(\cite(bibref)). <leader>CM inserts a pretty-printed reference to the
selected work, using markdown styling. If you want to insert a citation
while writing, use @@ from insertmode to insert the bibref instead.

The settings add two commands: :CiteRef and :CitePretty which call the
respective functions. You can pass any amount of .bibtex libraries to
the commands and they will be available to fuzzy search through.

:CiteEdit also added to fuzzy find a source and open it in vim for editing.
The function is not working yet, I have to find a way to go from the
fuzzy finder to papis, select the correct file and edit it in vim.

In Shell:
Can cd directories (d, D), open files (f, F), open most recently used
(ru), and edit bibtex references (ref). lowercase is a weighted view
over previously used directories/files, Uppercase is a search of the
whole file structure.

Still outstanding:
Needs the same comfort function additions as vim search, especially
reference search. (i.e., open corresponding document, yank path, open
editor,...)
2019-09-04 17:32:11 +00:00
3ce896af43 [nvim] Improve compilation filetype target
Allows compilation using pandoc to happen for markdown, as well as
rmarkdown files.
2019-09-02 23:23:43 +02:00
dcd3f07a8f [nvim] Add useful writing colorscheme
Pencil is from reedes, cribbed from iWriter. It is a good, subdued
colorscheme for writing prose. All colorschemes in this vimrc now come
with italicized letters (for comments, and words that should be italic).
All themes also respect the background= dark/light distinction and
enable the respective mode.
2019-09-02 23:21:56 +02:00
5f57994570 [nvim] Add rmarkdown, pandoc plugins and bindings
PDFs can be compiled using rmarkdown by invoking <leader>c, or C to open
the file (which pauses vim however). The best workflow is to open the
pdf manually in something like zathura, which will auto-update when the
document is newly compiled.
2019-09-02 22:45:24 +02:00
a84c18f7ab [nvim] Add function to show all keymappings
Use :ShowMaps to display all currently mapped things for vim. Will not
include things like `i`, but actual mappings.
2019-09-02 21:44:54 +02:00
b5e979189b [nvim] Add german dict possibility 2019-09-02 19:15:14 +02:00
29d7d4a65f [nvim] Add spellchecking shortcuts to vim
<leader>O to enable spellchecking for current buffer,
<leader>o to show suggestiong for word under curser.

(Try it out here, just hover over misspelled cursor!)
2019-09-02 19:07:44 +02:00
f0e73b27ec Merge branch '55-set-up-papis-configuration-for-reference-management' into 'master'
Resolve "Set up papis configuration for reference management"

Closes #55

See merge request marty-oehme/dotfiles!19
2019-09-02 13:54:24 +00:00
a7397dc58d Resolve "Set up papis configuration for reference management"
Add papis config file. Sets up a single 'academia' library in Nextcloud/Library folder.

Uses vim for most editing, and vifm as the file manager. No advanced functionality of papis is touched yet.

The structure of the library is to use authorname-title as subfolders in the library for the individual document clusters (i.e. the info.yaml files and any associated document files or notes).

Will need to further test functionality.
2019-09-02 13:54:24 +00:00
83a8e7e517 Merge branch '44-add-toggleable-light-dark-mode-variable' into 'master'
Resolve "Add toggleable light/dark mode variable"

Closes #44

See merge request marty-oehme/dotfiles!18
2019-09-02 11:00:28 +00:00
499d375791 Add basic dimswitch
Prints out current version number and simple usage instructions on invocation
with -h, --help, -v, --version. Displays used configuration file when invoked
with -i/--info.

Adds simple toggle ability script, used by simply invoking `dimswitch` from the
.local/bin/ directory. In this dotfile configuration that directory is added to
the path, so can be invoked from anywhere.

Invoked without any options it will look for a line which specifies a theme
with a `-light` or `-dark` option appended, and switch them out. Does not
change the vim colorscheme or background, and can not change the theme in
alacritty itself.

The extent of this script is still limited, if it should be expanded python
seems more suited. For further discussion, see its original Merge Request !18.
2019-09-02 11:00:28 +00:00
659bd61af3 [qutebrowser] Revert to downloading PDFs for now
Should implement checking existence of pdfjs on the system before either
showing PDFs in the browser or downloading.
2019-09-01 11:03:55 +02:00
39e2035571 Add qutebrowser as default BROWSER env var 2019-08-29 16:45:16 +02:00
13625bafec [qutebrowser] Add adblock blacklist, slightly change media shortcuts 2019-08-29 16:44:15 +02:00
991b906690 Add js whitelist for gmaps, gmail. Fix tab display
Tab titles need a number in front for quick <number>gm movement. Google
maps and Google mail do not work without javascript.
2019-08-27 14:13:18 +02:00
e5088962fb [qutebrowser] Add toggl to javascript whitelist 2019-08-08 14:12:43 +02:00
dbcc42051e [qutebrowser] Add dict.cc quick search engine
Use d and search term to translate the therm (by default German-English
and vice versa).
2019-08-08 13:34:40 +02:00
9061c77232 [qutebrowser] Add Todoist to javascript whitelist 2019-08-08 13:20:18 +02:00
b83a679d1d [qutebrowser] Add search engines, javascript toggle
Toggle Javascript on/off with <leader>js. Reload the configuration file
with <leader>VV. The search engines include reddit, github, wikipedia,
archlinux, aur, gopackages and more.
2019-08-06 09:25:57 +02:00
4825466d2a Merge branch '46-allow-nested-remote-tmux-handling' into 'master'
Resolve "Allow nested (remote) tmux handling"

Closes #46

See merge request marty-oehme/dotfiles!14
2019-07-27 12:29:47 +00:00
7fab7dd6fb [tmux] Add remote session nesting
If calling a tmux session within a tmux session, pressing F12 will
toggle between sending commands to the outer or inner session. If the
outer session is inactive its status-bar will be slightly greyed out to
show that no commands will reach it. If the inner session is a remote
ssh session, it will set some additional stylings for the status-bar to
further differentiate the two.
2019-07-27 12:29:47 +00:00
c8cd9bf11e Merge branch '47-add-unit-testing-to-sh-zsh-bash-files' into 'master'
Resolve "Add unit testing to SH/ZSH/Bash files"

Closes #47

See merge request marty-oehme/dotfiles!17
2019-07-27 11:42:54 +00:00
b11343b73a Add bats unit testing to repository
Will recursively look for `*.bats` files and run them with bats-core test suite. Simple sample unit tests for existing scripts are included in `.config/shell/rc.d/test`.
2019-07-27 11:42:54 +00:00
beb5f1c323 Rename alias & env setting shell scripts 2019-07-27 11:29:31 +02:00
b9441dc36d [vifm] Add icons for most used filetypes 2019-07-26 13:42:45 +02:00
6277ed1cf1 [tmux] Fix root directory setting command 2019-07-26 13:41:50 +02:00
590f430a09 Merge branch 'master' of gitlab.com:marty-oehme/dotfiles 2019-07-25 12:28:33 +02:00
eca508e230 [tmux] Notes session set vim root to notes dir 2019-07-25 12:28:00 +02:00
e4f444cfe5 Merge branch 'fix-ci-linting' into 'master'
Fix ci linting

See merge request marty-oehme/dotfiles!16
2019-07-24 09:47:15 +00:00
dd62216327 [gitlab] Remove unit testing CI for now 2019-07-24 11:37:59 +02:00
8d19ff9ffd [gitlab] Make CI output colorful 2019-07-24 11:33:57 +02:00
d7e8831423 Fix static analysis and lint errors 2019-07-24 11:32:04 +02:00
8494eda973 [nvim] Add shfmt and analysis to zsh files 2019-07-24 10:58:46 +02:00
bf23178314 [gitlab] Let shellcheck choose sh version 2019-07-24 10:55:01 +02:00
bedf7e18a9 Fix static analysis errors 2019-07-24 10:54:06 +02:00
05c189cfa4 Fix merge errors 2019-07-24 10:42:12 +02:00
ef73a11e51 Naive fixing of linter errors 2019-07-24 07:33:28 +02:00
21c40fa774 [gitlab] Use bash/posix style CI for .zsh/.sh files 2019-07-23 17:37:19 +02:00
7e302d8770 [dot] Remove legacy bootstrap install scripts 2019-07-23 16:56:38 +02:00
6e09ca47cb [gitlab] Fix sh linting in vim and pipeline 2019-07-23 16:50:30 +02:00
7f6b1d5c03 Merge branch '42-enable-linting-and-fixing-for-sh-files' into 'master'
Resolve "Enable linting and fixing for sh files"

Closes #42

See merge request marty-oehme/dotfiles!15
2019-07-23 14:45:41 +00:00
49a0723a09 [gitlab] Add simple CI pipeline for SH/ZSH scripts 2019-07-23 16:42:56 +02:00
2b8540f6cf [nvim] Remove golang-ci metalinter, rely on vim-go
vim-go already provides the linting necessary for golang. Using
golang-ci additionally only complicates matters and provides no benefit.
Additionally, it did not seem to be able to track files other than the
one in the current buffer, or those open in hidden buffers and would
show (false) errors of classes or functions not found even when they
existed.
2019-07-23 15:41:23 +02:00