Merged
This commit is contained in:
commit
87000b607c
|
@ -490,12 +490,12 @@ awful.screen.connect_for_each_screen(function(s)
|
||||||
s.dock_trigger = wibox({ bg = "#00000000", opacity = 0, ontop = true, visible = true })
|
s.dock_trigger = wibox({ bg = "#00000000", opacity = 0, ontop = true, visible = true })
|
||||||
s.dock_trigger:geometry({ width = 3, height = 3 })
|
s.dock_trigger:geometry({ width = 3, height = 3 })
|
||||||
|
|
||||||
s.topwibox:connect_signal("mouse::enter", function() start_switcher() end)
|
s.topwibox:connect_signal("mouse::enter", function() enable_bars() end)
|
||||||
s.topwibox:connect_signal("mouse::leave", function() switcher_timer:again() end)
|
s.topwibox:connect_signal("mouse::leave", function() bar_timer:again() end)
|
||||||
s.bottomwibox:connect_signal("mouse::enter", function() start_switcher() end)
|
s.bottomwibox:connect_signal("mouse::enter", function() enable_bars() end)
|
||||||
s.bottomwibox:connect_signal("mouse::leave", function() switcher_timer:again() end)
|
s.bottomwibox:connect_signal("mouse::leave", function() bar_timer:again() end)
|
||||||
s.dock_trigger:connect_signal("mouse::enter", function() start_switcher() end)
|
s.dock_trigger:connect_signal("mouse::enter", function() enable_bars() end)
|
||||||
s.dock_trigger:connect_signal("mouse::leave", function() switcher_timer:again() end)
|
s.dock_trigger:connect_signal("mouse::leave", function() bar_timer:again() end)
|
||||||
end)
|
end)
|
||||||
-- }}}
|
-- }}}
|
||||||
|
|
||||||
|
@ -507,12 +507,22 @@ root.buttons(gears.table.join(
|
||||||
))
|
))
|
||||||
-- }}}
|
-- }}}
|
||||||
|
|
||||||
|
function table.copy(t)
|
||||||
|
local u = { }
|
||||||
|
for k, v in pairs(t) do u[k] = v end
|
||||||
|
return setmetatable(u, getmetatable(t))
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
switcher_layout = awful.layout.suit.fair
|
switcher_layout = awful.layout.suit.fair
|
||||||
switcher_mode = false
|
switcher_mode = false
|
||||||
switcher_timer = timer({ timeout = 1 })
|
switcher_timer = timer({ timeout = 1 })
|
||||||
switcher_timer:connect_signal("timeout", function () end_switcher() end)
|
switcher_timer:connect_signal("timeout", function () end_switcher() end)
|
||||||
|
bar_timer = timer({ timeout = 1 })
|
||||||
|
bar_timer:connect_signal("timeout", function () disable_bars() end)
|
||||||
|
bar_mode = false
|
||||||
layout_table = {}
|
layout_table = {}
|
||||||
|
previous_tags = {}
|
||||||
|
|
||||||
function start_switcher ()
|
function start_switcher ()
|
||||||
if switcher_timer.started then switcher_timer:stop() end
|
if switcher_timer.started then switcher_timer:stop() end
|
||||||
|
@ -524,14 +534,15 @@ function start_switcher ()
|
||||||
for _, tag in ipairs(root.tags()) do
|
for _, tag in ipairs(root.tags()) do
|
||||||
layout_table[tag] = tag.layout
|
layout_table[tag] = tag.layout
|
||||||
tag.layout = switcher_layout
|
tag.layout = switcher_layout
|
||||||
|
tag.selected = true
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Enable all bars
|
|
||||||
for s in screen do
|
for s in screen do
|
||||||
s.topwibox.visible = true
|
for k,v in pairs(s.selected_tags) do table.insert(previous_tags, v) end
|
||||||
s.bottomwibox.visible = true
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
enable_bars()
|
||||||
|
|
||||||
for _, c in ipairs(client.get()) do
|
for _, c in ipairs(client.get()) do
|
||||||
set_borders(c)
|
set_borders(c)
|
||||||
end
|
end
|
||||||
|
@ -546,29 +557,53 @@ function end_switcher ()
|
||||||
-- Restore layout of all tags
|
-- Restore layout of all tags
|
||||||
for _, tag in ipairs(root.tags()) do
|
for _, tag in ipairs(root.tags()) do
|
||||||
tag.layout = layout_table[tag]
|
tag.layout = layout_table[tag]
|
||||||
|
if client.focus and tag ~= client.focus.first_tag or client.focus == nil then
|
||||||
|
tag.selected = false
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Set the master window
|
-- Set the master window
|
||||||
for _, c in ipairs(client.get()) do
|
for _, c in ipairs(client.get()) do
|
||||||
remove_borders(c)
|
remove_borders(c)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Set focused client as master
|
-- Set focused client as master
|
||||||
if client.focus then client.focus:swap(awful.client.getmaster()) end
|
if client.focus then
|
||||||
|
client.focus:swap(awful.client.getmaster())
|
||||||
-- Disable all bars
|
else
|
||||||
for s in screen do
|
for _, tag in ipairs(previous_tags) do
|
||||||
s.topwibox.visible = false
|
tag.selected = true
|
||||||
s.bottomwibox.visible = false
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--rofi_kill()
|
disable_bars()
|
||||||
|
|
||||||
|
previous_tags = {}
|
||||||
end
|
end
|
||||||
|
|
||||||
function toggle_switcher ()
|
function toggle_switcher ()
|
||||||
if switcher_mode then end_switcher() else start_switcher() end
|
if switcher_mode then end_switcher() else start_switcher() end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function enable_bars ()
|
||||||
|
if bar_timer.started then bar_timer:stop() end
|
||||||
|
if bar_mode == true then return else bar_mode = true end
|
||||||
|
|
||||||
|
for s in screen do
|
||||||
|
s.topwibox.visible = true
|
||||||
|
s.bottomwibox.visible = true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function disable_bars ()
|
||||||
|
if bar_timer.started then bar_timer:stop() end
|
||||||
|
if bar_mode == false then return else bar_mode = false end
|
||||||
|
|
||||||
|
for s in screen do
|
||||||
|
s.topwibox.visible = false
|
||||||
|
s.bottomwibox.visible = false
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function set_borders (c)
|
function set_borders (c)
|
||||||
c.border_width = beautiful.border_width
|
c.border_width = beautiful.border_width
|
||||||
awful.titlebar.show(c)
|
awful.titlebar.show(c)
|
||||||
|
@ -790,6 +825,12 @@ clientkeys = gears.table.join(
|
||||||
{description = "close", group = "client"}),
|
{description = "close", group = "client"}),
|
||||||
awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ,
|
awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ,
|
||||||
{description = "toggle floating", group = "client"}),
|
{description = "toggle floating", group = "client"}),
|
||||||
|
awful.key({ modkey, "Control", "Shift" }, "space", function (c)
|
||||||
|
c.maximized = false
|
||||||
|
c.maximized_vertical = false
|
||||||
|
c.maximized_horizontal = false
|
||||||
|
end,
|
||||||
|
{description = "toggle floating", group = "client"}),
|
||||||
awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end,
|
awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end,
|
||||||
{description = "move to master", group = "client"}),
|
{description = "move to master", group = "client"}),
|
||||||
awful.key({ modkey, }, "o", function (c) c:move_to_screen() end,
|
awful.key({ modkey, }, "o", function (c) c:move_to_screen() end,
|
||||||
|
@ -891,7 +932,11 @@ awful.rules.rules = {
|
||||||
keys = clientkeys,
|
keys = clientkeys,
|
||||||
buttons = clientbuttons,
|
buttons = clientbuttons,
|
||||||
screen = awful.screen.preferred,
|
screen = awful.screen.preferred,
|
||||||
placement = awful.placement.no_overlap+awful.placement.no_offscreen
|
placement = awful.placement.no_overlap+awful.placement.no_offscreen,
|
||||||
|
maximized_vertical = false,
|
||||||
|
maximized_horizontal = false,
|
||||||
|
floating = false,
|
||||||
|
maximized = false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
50
.vimrc
50
.vimrc
|
@ -9,10 +9,8 @@ call plug#begin()
|
||||||
Plug 'arcticicestudio/nord-vim'
|
Plug 'arcticicestudio/nord-vim'
|
||||||
Plug 'scrooloose/nerdtree'
|
Plug 'scrooloose/nerdtree'
|
||||||
Plug 'jistr/vim-nerdtree-tabs'
|
Plug 'jistr/vim-nerdtree-tabs'
|
||||||
Plug 'fweep/vim-tabber.git'
|
|
||||||
Plug 'rhysd/vim-clang-format'
|
Plug 'rhysd/vim-clang-format'
|
||||||
Plug 'kana/vim-operator-user'
|
Plug 'kana/vim-operator-user'
|
||||||
Plug 'https://github.com/antoyo/vim-licenses'
|
|
||||||
Plug 'rust-lang/rust.vim'
|
Plug 'rust-lang/rust.vim'
|
||||||
Plug 'Shougo/deoplete.nvim'
|
Plug 'Shougo/deoplete.nvim'
|
||||||
Plug 'roxma/nvim-yarp'
|
Plug 'roxma/nvim-yarp'
|
||||||
|
@ -32,12 +30,45 @@ let g:deoplete#enable_at_startup = 1
|
||||||
|
|
||||||
set tags+=./.tags
|
set tags+=./.tags
|
||||||
|
|
||||||
|
" Session management
|
||||||
|
|
||||||
|
set switchbuf=useopen,usetab
|
||||||
|
|
||||||
|
|
||||||
|
fu! SaveSess()
|
||||||
|
execute 'mksession! ' . getcwd() . '/.session.vim'
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
fu! RestoreSess()
|
||||||
|
if filereadable(getcwd() . '/.session.vim')
|
||||||
|
let initial_args = argv()
|
||||||
|
execute 'so ' . getcwd() . '/.session.vim'
|
||||||
|
for file in initial_args
|
||||||
|
if bufloaded(file) != 1
|
||||||
|
execute 'tabnew ' . getcwd() . '/' . file
|
||||||
|
else
|
||||||
|
execute 'sb ' . file
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" Save session on quitting Vim
|
||||||
|
autocmd VimLeave * NERDTreeTabsClose
|
||||||
|
autocmd VimLeave * call SaveSess()
|
||||||
|
|
||||||
|
" Restore session on starting Vim
|
||||||
|
autocmd VimEnter * nested call RestoreSess()
|
||||||
|
|
||||||
"----------------------
|
"----------------------
|
||||||
|
|
||||||
" move between tabs
|
" move between tabs
|
||||||
nnoremap <A-Left> :tabprevious<CR>
|
nnoremap <A-Left> :tabprevious<CR>
|
||||||
nnoremap <A-Right> :tabnext<CR>
|
nnoremap <A-Right> :tabnext<CR>
|
||||||
|
|
||||||
|
|
||||||
|
map <C-n> :NERDTreeMirrorToggle<CR>
|
||||||
|
|
||||||
" prevent mouse vanishing
|
" prevent mouse vanishing
|
||||||
set nomousehide
|
set nomousehide
|
||||||
|
|
||||||
|
@ -52,10 +83,6 @@ endfunction
|
||||||
|
|
||||||
map <F12> <Esc>:call ToggleGUICruft()<cr>
|
map <F12> <Esc>:call ToggleGUICruft()<cr>
|
||||||
|
|
||||||
set tabline=%!tabber#TabLine()
|
|
||||||
let g:tabber_filename_style = 'filename' " README.md\
|
|
||||||
let g:tabber_divider_style = 'compatible'
|
|
||||||
|
|
||||||
set number
|
set number
|
||||||
set linebreak
|
set linebreak
|
||||||
set nobackup
|
set nobackup
|
||||||
|
@ -73,25 +100,16 @@ nnoremap K <nop>
|
||||||
runtime! ftplugin/man.vim
|
runtime! ftplugin/man.vim
|
||||||
nnoremap K :Man <cword>
|
nnoremap K :Man <cword>
|
||||||
|
|
||||||
noremap <C-S> :update<CR><CR>
|
|
||||||
vnoremap <C-S> <C-C>:update<CR><CR>
|
|
||||||
inoremap <C-S> <C-O>:update<CR><CR>
|
|
||||||
|
|
||||||
set mouse=a
|
set mouse=a
|
||||||
set nu
|
set nu
|
||||||
|
|
||||||
let g:clang_format#code_style="webkit"
|
let g:clang_format#code_style="llvm"
|
||||||
|
|
||||||
set clipboard=unnamed
|
set clipboard=unnamed
|
||||||
|
|
||||||
set backspace=indent,eol,start " allow backspacing over everything in insert mode
|
set backspace=indent,eol,start " allow backspacing over everything in insert mode
|
||||||
|
|
||||||
" Allow saving of files as sudo when I forgot to start vim using sudo.
|
|
||||||
cmap w!! w !sudo tee > /dev/null %
|
cmap w!! w !sudo tee > /dev/null %
|
||||||
|
|
||||||
" where it should get the dictionary files
|
|
||||||
let g:spellfile_URL = 'http://ftp.vim.org/vim/runtime/spell'
|
|
||||||
|
|
||||||
set laststatus=2
|
set laststatus=2
|
||||||
let g:nord_uniform_diff_background = 1
|
let g:nord_uniform_diff_background = 1
|
||||||
let g:nord_cursor_line_number_background = 1
|
let g:nord_cursor_line_number_background = 1
|
||||||
|
|
Loading…
Reference in New Issue