diff options
author | neodarz <neodarz@neodarz.net> | 2017-04-22 14:40:50 +0200 |
---|---|---|
committer | neodarz <neodarz@neodarz.net> | 2017-04-22 14:40:50 +0200 |
commit | 9e1e6ccedf25a8e76d346a8ff3014dfe98c5924a (patch) | |
tree | 3bb5aa26b5c7f1c55bcd3714f6132a67892dbc9c | |
parent | 7e272d375b2b5fbf4c7281fb80d7cf9624d7bd6f (diff) | |
download | dotfiles_ascii-9e1e6ccedf25a8e76d346a8ff3014dfe98c5924a.tar.xz dotfiles_ascii-9e1e6ccedf25a8e76d346a8ff3014dfe98c5924a.zip |
Remove some useless conf file
81 files changed, 0 insertions, 7648 deletions
diff --git a/awesome/.config/awesome/config.lua b/awesome/.config/awesome/config.lua deleted file mode 100644 index b60fff2..0000000 --- a/awesome/.config/awesome/config.lua +++ /dev/null @@ -1,55 +0,0 @@ --- a w e s o m e ███ ██ --- ░██░ ░░ --- █████ ██████ ███████ ██████ ██ █████ --- ██░░░██ ██░░░░██░░██░░░██░░░██░ ░██ ██░░░██ --- ░██ ░░ ░██ ░██ ░██ ░██ ░██ ░██░██ ░██ --- ░██ ██░██ ░██ ░██ ░██ ░██ ░██░██ ░██ --- ░░█████ ░░██████ ███ ░██ ░██ ░██░░██████ --- ░░░░░ ░░░░░░ ░░░ ░░ ░░ ░░ ░░░░░██ --- █████ --- ░░░░░ - --- █▓▒░ interface settings -modkey = "Mod4" -altkey = "Mod1" -bar_position = "bottom" -tag_count = 4 -tag_icon = "◊" -tag_icon_active = "◆" -clock_format = " %a %m/%d %H:%M " -- http://linux.die.net/man/3/strftime -battery_id = "BAT1" -sloppy_focus = false - --- █▓▒░ preffered apps -terminal = "urxvtc" -rootterm = "urxvtc -hold -e sudo " -term_exec = "urxvtc -hold -e " -filegui = "thunar" -filecli = terminal.." -e mc" -cpucli = terminal.." -e htop" -editor = os.getenv("EDITOR") or "vim" -editor_cmd = terminal.." -e "..editor -apparence = "lxappearance" -archiver = "file-roller" -search = "catfish" -guieditor = "subl" -filer = "thunar" -mediaplayer = "smplayer" -musicplayer = terminal.." -e ncmpcpp" -volumecontrol = terminal.. " -T sound -e alsamixer" -irc = terminal.." -T weechat -e weechat-curses" -iptraf = terminal.." -g -e sudo iptraf-ng -i all" -burner = "xfburn" -webgui = "chromium" -webcli = terminal.." -e links2" -ftpgui = "filezilla" -torrent = "transmission-gtk" -calc = "galculator" -pdf = "evince" -imageviewer = "viewnior" -exiter = terminal.." -T goodbye -e bash /home/xero/code/sys/goodbye.sh" -passmanager = "keepassx" -runcmd = "gmrun" -mp3tag = "puddletag" -blanktag = terminal.. " -T blank" -vbox = "gksudo " ..term_exec.. "modprobe vboxdrv && virtualbox" diff --git a/awesome/.config/awesome/lain/README.rst b/awesome/.config/awesome/lain/README.rst deleted file mode 100644 index ca6569b..0000000 --- a/awesome/.config/awesome/lain/README.rst +++ /dev/null @@ -1,49 +0,0 @@ -Lain -==== - ---------------------------------------------- -Layouts, widgets and utilities for Awesome WM ---------------------------------------------- - -:Author: Luke Bonham <dada [at] archlinux [dot] info> -:Version: git -:License: GNU-GPLv2_ -:Source: https://github.com/copycat-killer/lain - -Description ------------ - -Successor of awesome-vain_, this module provides new layouts, a set of widgets and utility functions, in order to improve Awesome_ usability and configurability. - -Read the wiki_ for all the info. - -**Note that** this module requires Awesome version 3.5 or higher. - -Contributions -------------- - -Any contribution is welcome! Feel free to make a pull request. - -Just make sure that: - -- Your code fits with the general style of the module. In particular, you should use the same indentation pattern that the code uses, and also avoid adding space at the ends of lines. - -- Your code its easy to understand, maintainable, and modularized. You should also avoid code duplication wherever possible by adding functions or using ``lain.helpers``. If something is unclear, and you can't write it in such a way that it will be clear, explain it with a comment. - -- You test your changes before submitting to make sure that not only your code works, but did not break other parts of the module too! - -- You eventually update ``wiki`` submodule with a thorough section. - -Contributed widgets have to be put in ``lain/widgets/contrib``. - -Screenshots ------------ - -.. image:: http://i.imgur.com/8D9A7lW.png -.. image:: http://i.imgur.com/9Iv3OR3.png -.. image:: http://i.imgur.com/STCPcaJ.png - -.. _GNU-GPLv2: http://www.gnu.org/licenses/gpl-2.0.html -.. _awesome-vain: https://github.com/vain/awesome-vain -.. _Awesome: http://awesome.naquadah.org/ -.. _wiki: https://github.com/copycat-killer/lain/wiki diff --git a/awesome/.config/awesome/lain/helpers.lua b/awesome/.config/awesome/lain/helpers.lua deleted file mode 100644 index 863bb87..0000000 --- a/awesome/.config/awesome/lain/helpers.lua +++ /dev/null @@ -1,103 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - ---]] - -local debug = require("debug") - -local capi = { timer = timer } -local io = { open = io.open, - lines = io.lines } -local rawget = rawget - --- Lain helper functions for internal use --- lain.helpers -local helpers = {} - -helpers.lain_dir = debug.getinfo(1, 'S').source:match[[^@(.*/).*$]] -helpers.icons_dir = helpers.lain_dir .. 'icons/' -helpers.scripts_dir = helpers.lain_dir .. 'scripts/' - --- {{{ Modules loader - -function helpers.wrequire(table, key) - local module = rawget(table, key) - return module or require(table._NAME .. '.' .. key) -end - --- }}} - --- {{{ File operations - --- see if the file exists and is readable -function helpers.file_exists(file) - local f = io.open(file) - if f then - local s = f:read() - f:close() - f = s - end - return f ~= nil -end - --- get all lines from a file, returns an empty --- list/table if the file does not exist -function helpers.lines_from(file) - if not helpers.file_exists(file) then return {} end - lines = {} - for line in io.lines(file) do - lines[#lines + 1] = line - end - return lines -end - --- get first line of a file, return nil if --- the file does not exist -function helpers.first_line(file) - return helpers.lines_from(file)[1] -end - --- get first non empty line from a file, --- returns nil otherwise -function helpers.first_nonempty_line(file) - for k,v in pairs(helpers.lines_from(file)) do - if #v then return v end - end - return nil -end - --- }}} - --- {{{ Timer maker - -helpers.timer_table = {} - -function helpers.newtimer(name, timeout, fun, nostart) - helpers.timer_table[name] = capi.timer({ timeout = timeout }) - helpers.timer_table[name]:connect_signal("timeout", fun) - helpers.timer_table[name]:start() - if not nostart then - helpers.timer_table[name]:emit_signal("timeout") - end -end - --- }}} - --- {{{ A map utility - -helpers.map_table = {} - -function helpers.set_map(element, value) - helpers.map_table[element] = value -end - -function helpers.get_map(element) - return helpers.map_table[element] -end - --- }}} - -return helpers diff --git a/awesome/.config/awesome/lain/init.lua b/awesome/.config/awesome/lain/init.lua deleted file mode 100644 index 5086435..0000000 --- a/awesome/.config/awesome/lain/init.lua +++ /dev/null @@ -1,21 +0,0 @@ - ---[[ - - Lain - Layouts, widgets and utilities for Awesome WM - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - ---]] - -package.loaded.lain = nil - -local lain = -{ - layout = require("lain.layout"), - util = require("lain.util"), - widgets = require("lain.widgets") -} - -return lain diff --git a/awesome/.config/awesome/lain/layout/cascade.lua b/awesome/.config/awesome/lain/layout/cascade.lua deleted file mode 100644 index cabacef..0000000 --- a/awesome/.config/awesome/lain/layout/cascade.lua +++ /dev/null @@ -1,65 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local tag = require("awful.tag") - -local cascade = -{ - name = "cascade", - nmaster = 0, - offset_x = 32, - offset_y = 8 -} - -function cascade.arrange(p) - - -- Cascade windows. - - -- Screen. - local wa = p.workarea - local cls = p.clients - - -- Opening a new window will usually force all existing windows to - -- get resized. This wastes a lot of CPU time. So let's set a lower - -- bound to "how_many": This wastes a little screen space but you'll - -- get a much better user experience. - local t = tag.selected(p.screen) - local num_c - if cascade.nmaster > 0 - then - num_c = cascade.nmaster - else - num_c = tag.getnmaster(t) - end - - local how_many = #cls - if how_many < num_c - then - how_many = num_c - end - - local current_offset_x = cascade.offset_x * (how_many - 1) - local current_offset_y = cascade.offset_y * (how_many - 1) - - -- Iterate. - for i = 1,#cls,1 - do - local c = cls[i] - local g = {} - - g.x = wa.x + (how_many - i) * cascade.offset_x - g.y = wa.y + (i - 1) * cascade.offset_y - g.width = wa.width - current_offset_x - g.height = wa.height - current_offset_y - - c:geometry(g) - end -end - -return cascade diff --git a/awesome/.config/awesome/lain/layout/cascadetile.lua b/awesome/.config/awesome/lain/layout/cascadetile.lua deleted file mode 100644 index 98821e3..0000000 --- a/awesome/.config/awesome/lain/layout/cascadetile.lua +++ /dev/null @@ -1,155 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local tag = require("awful.tag") -local beautiful = require("beautiful") -local tonumber = tonumber - -local cascadetile = -{ - name = "cascadetile", - nmaster = 0, - ncol = 0, - mwfact = 0, - offset_x = 5, - offset_y = 32, - extra_padding = 0 -} - -function cascadetile.arrange(p) - - -- Layout with one fixed column meant for a master window. Its - -- width is calculated according to mwfact. Other clients are - -- cascaded or "tabbed" in a slave column on the right. - - -- It's a bit hard to demonstrate the behaviour with ASCII-images... - -- - -- (1) (2) (3) (4) - -- +-----+---+ +-----+---+ +-----+---+ +-----+---+ - -- | | | | | | | | | | | 4 | - -- | | | | | 2 | | | 3 | | | | - -- | 1 | | -> | 1 | | -> | 1 | | -> | 1 +---+ - -- | | | | +---+ | +---+ | | 3 | - -- | | | | | | | | 2 | | |---| - -- | | | | | | | |---| | | 2 | - -- | | | | | | | | | | |---| - -- +-----+---+ +-----+---+ +-----+---+ +-----+---+ - - -- A useless gap (like the dwm patch) can be defined with - -- beautiful.useless_gap_width. - local useless_gap = tonumber(beautiful.useless_gap_width) or 0 - - -- Screen. - local wa = p.workarea - local cls = p.clients - - -- Width of main column? - local t = tag.selected(p.screen) - local mwfact - if cascadetile.mwfact > 0 - then - mwfact = cascadetile.mwfact - else - mwfact = tag.getmwfact(t) - end - - -- Make slave windows overlap main window? Do this if ncol is 1. - local overlap_main - if cascadetile.ncol > 0 - then - overlap_main = cascadetile.ncol - else - overlap_main = tag.getncol(t) - end - - -- Minimum space for slave windows? See cascade.lua. - local num_c - if cascadetile.nmaster > 0 - then - num_c = cascadetile.nmaster - else - num_c = tag.getnmaster(t) - end - - local how_many = #cls - 1 - if how_many < num_c - then - how_many = num_c - end - local current_offset_x = cascadetile.offset_x * (how_many - 1) - local current_offset_y = cascadetile.offset_y * (how_many - 1) - - if #cls > 0 - then - -- Main column, fixed width and height. - local c = cls[#cls] - local g = {} - local mainwid = wa.width * mwfact - local slavewid = wa.width - mainwid - - if overlap_main == 1 - then - g.width = wa.width - - -- The size of the main window may be reduced a little bit. - -- This allows you to see if there are any windows below the - -- main window. - -- This only makes sense, though, if the main window is - -- overlapping everything else. - g.width = g.width - cascadetile.extra_padding - else - g.width = mainwid - end - - g.height = wa.height - g.x = wa.x - g.y = wa.y - if useless_gap > 0 - then - -- Reduce width once and move window to the right. Reduce - -- height twice, however. - g.width = g.width - useless_gap - g.height = g.height - 2 * useless_gap - g.x = g.x + useless_gap - g.y = g.y + useless_gap - - -- When there's no window to the right, add an additional - -- gap. - if overlap_main == 1 - then - g.width = g.width - useless_gap - end - end - c:geometry(g) - - -- Remaining clients stacked in slave column, new ones on top. - if #cls > 1 - then - for i = (#cls - 1),1,-1 - do - c = cls[i] - g = {} - g.width = slavewid - current_offset_x - g.height = wa.height - current_offset_y - g.x = wa.x + mainwid + (how_many - i) * cascadetile.offset_x - g.y = wa.y + (i - 1) * cascadetile.offset_y - if useless_gap > 0 - then - g.width = g.width - 2 * useless_gap - g.height = g.height - 2 * useless_gap - g.x = g.x + useless_gap - g.y = g.y + useless_gap - end - c:geometry(g) - end - end - end -end - -return cascadetile diff --git a/awesome/.config/awesome/lain/layout/centerfair.lua b/awesome/.config/awesome/lain/layout/centerfair.lua deleted file mode 100644 index 49b4a14..0000000 --- a/awesome/.config/awesome/lain/layout/centerfair.lua +++ /dev/null @@ -1,147 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010, Nicolas Estibals - * (c) 2010-2012, Peter Hofmann - ---]] - -local tag = require("awful.tag") -local beautiful = require("beautiful") -local math = { ceil = math.ceil, - floor = math.floor, - max = math.max } -local tonumber = tonumber - -local centerfair = { name = "centerfair" } - -function centerfair.arrange(p) - -- Layout with fixed number of vertical columns (read from nmaster). - -- Cols are centerded until there is nmaster columns, then windows - -- are stacked in the slave columns, with at most ncol clients per - -- column if possible. - - -- with nmaster=3 and ncol=1 you'll have - -- (1) (2) (3) - -- +---+---+---+ +-+---+---+-+ +---+---+---+ - -- | | | | | | | | | | | | | - -- | | 1 | | -> | | 1 | 2 | | -> | 1 | 2 | 3 | -> - -- | | | | | | | | | | | | | - -- +---+---+---+ +-+---+---+-+ +---+---+---+ - - -- (4) (5) - -- +---+---+---+ +---+---+---+ - -- | | | 3 | | | 2 | 4 | - -- + 1 + 2 +---+ -> + 1 +---+---+ - -- | | | 4 | | | 3 | 5 | - -- +---+---+---+ +---+---+---+ - - -- A useless gap (like the dwm patch) can be defined with - -- beautiful.useless_gap_width . - local useless_gap = tonumber(beautiful.useless_gap_width) or 0 - - -- Screen. - local wa = p.workarea - local cls = p.clients - - -- How many vertical columns? Read from nmaster on the tag. - local t = tag.selected(p.screen) - local num_x = centerfair.nmaster or tag.getnmaster(t) - local ncol = centerfair.ncol or tag.getncol(t) - - local width = math.floor((wa.width-(num_x+1)*useless_gap) / num_x) - - local offset_y = wa.y + useless_gap - if #cls < num_x - then - -- Less clients than the number of columns, let's center it! - local offset_x = wa.x + useless_gap + (wa.width - #cls*width - (#cls+1)*useless_gap) / 2 - local g = {} - g.width = width - g.height = wa.height - 2*useless_gap - 2 - g.y = offset_y - for i = 1, #cls do - g.x = offset_x + (i - 1) * (width + useless_gap + 2) - cls[i]:geometry(g) - end - else - -- More clients than the number of columns, let's arrange it! - local offset_x = wa.x - if useless_gap > 0 then - offset_x = offset_x - end - - -- Master client deserves a special treatement - local g = {} - g.width = wa.width - (num_x-1)*width -num_x*useless_gap - 2 - g.height = wa.height - 2*useless_gap - 2 - g.x = offset_x + useless_gap - g.y = offset_y - cls[1]:geometry(g) - - -- Treat the other clients - - -- Compute distribution of clients among columns - local num_y ={} - do - local remaining_clients = #cls-1 - local ncol_min = math.ceil(remaining_clients/(num_x-1)) - if ncol >= ncol_min - then - for i = (num_x-1), 1, -1 do - if (remaining_clients-i+1) < ncol - then - num_y[i] = remaining_clients-i + 1 - else - num_y[i] = ncol - end - remaining_clients = remaining_clients - num_y[i] - end - else - local rem = remaining_clients % (num_x-1) - if rem ==0 - then - for i = 1, num_x-1 do - num_y[i] = ncol_min - end - else - for i = 1, num_x-1 do - num_y[i] = ncol_min - 1 - end - for i = 0, rem-1 do - num_y[num_x-1-i] = num_y[num_x-1-i] + 1 - end - end - end - end - - -- Compute geometry of the other clients - local nclient = 2 - g.x = g.x + g.width+useless_gap + 2 - g.width = width - - if useless_gap > 0 then - g.width = g.width - useless_gap/2 - 2 - end - - for i = 1, (num_x-1) do - to_remove = 2 - g.height = math.floor((wa.height-useless_gap)/num_y[i]) - g.y = offset_y - for j = 0, (num_y[i]-2) do - cls[nclient]:geometry(g) - nclient = nclient + 1 - g.y = g.y + g.height+useless_gap + 2 - to_remove = to_remove + 2 - end - g.height = wa.height - num_y[i]*useless_gap - (num_y[i]-1)*g.height - useless_gap - to_remove - cls[nclient]:geometry(g) - nclient = nclient + 1 - g.x = g.x+g.width+useless_gap + 2 - end - end -end - -return centerfair diff --git a/awesome/.config/awesome/lain/layout/centerwork.lua b/awesome/.config/awesome/lain/layout/centerwork.lua deleted file mode 100644 index b8175ea..0000000 --- a/awesome/.config/awesome/lain/layout/centerwork.lua +++ /dev/null @@ -1,118 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local awful = require("awful") -local beautiful = require("beautiful") -local tonumber = tonumber -local math = { floor = math.floor } - -local centerwork = -{ - name = "centerwork", - top_left = 0, - top_right = 1, - bottom_left = 2, - bottom_right = 3 -} - -function centerwork.arrange(p) - -- A useless gap (like the dwm patch) can be defined with - -- beautiful.useless_gap_width . - local useless_gap = tonumber(beautiful.useless_gap_width) or 0 - - -- Screen. - local wa = p.workarea - local cls = p.clients - - -- Width of main column? - local t = awful.tag.selected(p.screen) - local mwfact = awful.tag.getmwfact(t) - - if #cls > 0 - then - -- Main column, fixed width and height. - local c = cls[#cls] - local g = {} - local mainwid = math.floor(wa.width * mwfact) - local slavewid = wa.width - mainwid - local slaveLwid = math.floor(slavewid / 2) - local slaveRwid = slavewid - slaveLwid - local slaveThei = math.floor(wa.height / 2) - local slaveBhei = wa.height - slaveThei - - g.height = wa.height - 2 * useless_gap - g.width = mainwid - g.x = wa.x + slaveLwid - g.y = wa.y + useless_gap - - c:geometry(g) - - -- Auxiliary windows. - if #cls > 1 - then - local at = 0 - for i = (#cls - 1),1,-1 - do - -- It's all fixed. If there are more than 5 clients, - -- those additional clients will float. This is - -- intentional. - if at == 4 - then - break - end - - c = cls[i] - g = {} - - if at == centerwork.top_left - then - -- top left - g.x = wa.x + useless_gap - g.y = wa.y + useless_gap - g.width = slaveLwid - 2 * useless_gap - g.height = slaveThei - useless_gap - elseif at == centerwork.top_right - then - -- top right - g.x = wa.x + slaveLwid + mainwid + useless_gap - g.y = wa.y + useless_gap - g.width = slaveRwid - 2 * useless_gap - g.height = slaveThei - useless_gap - elseif at == centerwork.bottom_left - then - -- bottom left - g.x = wa.x + useless_gap - g.y = wa.y + slaveThei + useless_gap - g.width = slaveLwid - 2 * useless_gap - g.height = slaveBhei - 2 * useless_gap - elseif at == centerwork.bottom_right - then - -- bottom right - g.x = wa.x + slaveLwid + mainwid + useless_gap - g.y = wa.y + slaveThei + useless_gap - g.width = slaveRwid - 2 * useless_gap - g.height = slaveBhei - 2 * useless_gap - end - - c:geometry(g) - - at = at + 1 - end - - -- Set remaining clients to floating. - for i = (#cls - 1 - 4),1,-1 - do - c = cls[i] - awful.client.floating.set(c, true) - end - end - end -end - -return centerwork diff --git a/awesome/.config/awesome/lain/layout/init.lua b/awesome/.config/awesome/lain/layout/init.lua deleted file mode 100644 index d79679a..0000000 --- a/awesome/.config/awesome/lain/layout/init.lua +++ /dev/null @@ -1,20 +0,0 @@ - ---[[ - - Lain - Layouts, widgets and utilities for Awesome WM - - Layouts section - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local wrequire = require("lain.helpers").wrequire -local setmetatable = setmetatable - -local layout = { _NAME = "lain.layout" } - -return setmetatable(layout, { __index = wrequire }) diff --git a/awesome/.config/awesome/lain/layout/termfair.lua b/awesome/.config/awesome/lain/layout/termfair.lua deleted file mode 100644 index 89a44bb..0000000 --- a/awesome/.config/awesome/lain/layout/termfair.lua +++ /dev/null @@ -1,141 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local tag = require("awful.tag") -local beautiful = require("beautiful") -local math = { ceil = math.ceil, - floor = math.floor, - max = math.max } -local tonumber = tonumber - -local termfair = { name = "termfair" } - -function termfair.arrange(p) - -- Layout with fixed number of vertical columns (read from nmaster). - -- New windows align from left to right. When a row is full, a now - -- one above it is created. Like this: - - -- (1) (2) (3) - -- +---+---+---+ +---+---+---+ +---+---+---+ - -- | | | | | | | | | | | | - -- | 1 | | | -> | 2 | 1 | | -> | 3 | 2 | 1 | -> - -- | | | | | | | | | | | | - -- +---+---+---+ +---+---+---+ +---+---+---+ - - -- (4) (5) (6) - -- +---+---+---+ +---+---+---+ +---+---+---+ - -- | 4 | | | | 5 | 4 | | | 6 | 5 | 4 | - -- +---+---+---+ -> +---+---+---+ -> +---+---+---+ - -- | 3 | 2 | 1 | | 3 | 2 | 1 | | 3 | 2 | 1 | - -- +---+---+---+ +---+---+---+ +---+---+---+ - - -- A useless gap (like the dwm patch) can be defined with - -- beautiful.useless_gap_width. - local useless_gap = tonumber(beautiful.useless_gap_width) or 0 - - -- Screen. - local wa = p.workarea - local cls = p.clients - - -- How many vertical columns? - local t = tag.selected(p.screen) - local num_x = termfair.nmaster or tag.getnmaster(t) - - -- Do at least "desired_y" rows. - local desired_y = termfair.ncol or tag.getncol(t) - - if #cls > 0 - then - local num_y = math.max(math.ceil(#cls / num_x), desired_y) - local cur_num_x = num_x - local at_x = 0 - local at_y = 0 - local remaining_clients = #cls - local width = math.floor(wa.width / num_x) - local height = math.floor(wa.height / num_y) - - -- We start the first row. Left-align by limiting the number of - -- available slots. - if remaining_clients < num_x - then - cur_num_x = remaining_clients - end - - -- Iterate in reversed order. - for i = #cls,1,-1 - do - -- Get x and y position. - local c = cls[i] - local this_x = cur_num_x - at_x - 1 - local this_y = num_y - at_y - 1 - - -- Calc geometry. - local g = {} - if this_x == (num_x - 1) - then - g.width = wa.width - (num_x - 1) * width - else - g.width = width - end - if this_y == (num_y - 1) - then - g.height = wa.height - (num_y - 1) * height - else - g.height = height - end - - g.x = wa.x + this_x * width - g.y = wa.y + this_y * height - - if useless_gap > 0 - then - -- Top and left clients are shrinked by two steps and - -- get moved away from the border. Other clients just - -- get shrinked in one direction. - - gap_factor = (useless_gap / 100) * 2 - - if this_x == 0 - then - g.width = g.width - (2 + gap_factor) * useless_gap - g.x = g.x + useless_gap - else - g.width = g.width - (1 + gap_factor) * useless_gap - end - - if this_y == 0 - then - g.height = g.height - (2 + gap_factor) * useless_gap - g.y = g.y + useless_gap - else - g.height = g.height - (1 + gap_factor) * useless_gap - end - end - c:geometry(g) - remaining_clients = remaining_clients - 1 - - -- Next grid position. - at_x = at_x + 1 - if at_x == num_x - then - -- Row full, create a new one above it. - at_x = 0 - at_y = at_y + 1 - - -- We start a new row. Left-align. - if remaining_clients < num_x - then - cur_num_x = remaining_clients - end - end - end - end -end - -return termfair diff --git a/awesome/.config/awesome/lain/layout/uselessfair.lua b/awesome/.config/awesome/lain/layout/uselessfair.lua deleted file mode 100644 index 6aa6666..0000000 --- a/awesome/.config/awesome/lain/layout/uselessfair.lua +++ /dev/null @@ -1,121 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2012, Josh Komoroske - * (c) 2010-2012, Peter Hofmann - ---]] - -local beautiful = require("beautiful") -local ipairs = ipairs -local math = { ceil = math.ceil, sqrt = math.sqrt } -local tonumber = tonumber - -local uselessfair = {} - -local function fair(p, orientation) - -- A useless gap (like the dwm patch) can be defined with - -- beautiful.useless_gap_width. - local useless_gap = tonumber(beautiful.useless_gap_width) or 0 - - local wa = p.workarea - local cls = p.clients - - if #cls > 0 then - local cells = math.ceil(math.sqrt(#cls)) - local strips = math.ceil(#cls / cells) - - local cell = 0 - local strip = 0 - for k, c in ipairs(cls) do - local g = {} - -- Save actual grid index for use in the useless_gap - -- routine. - local this_x = 0 - local this_y = 0 - if ( orientation == "east" and #cls > 2 ) - or ( orientation == "south" and #cls <= 2 ) then - if #cls < (strips * cells) and strip == strips - 1 then - g.width = wa.width / (cells - ((strips * cells) - #cls)) - else - g.width = wa.width / cells - end - g.height = wa.height / strips - - this_x = cell - this_y = strip - - g.x = wa.x + cell * g.width - g.y = wa.y + strip * g.height - - else - if #cls < (strips * cells) and strip == strips - 1 then - g.height = wa.height / (cells - ((strips * cells) - #cls)) - else - g.height = wa.height / cells - end - g.width = wa.width / strips - - this_x = strip - this_y = cell - - g.x = wa.x + strip * g.width - g.y = wa.y + cell * g.height - end - - -- Useless gap. - if useless_gap > 0 - then - -- Top and left clients are shrinked by two steps and - -- get moved away from the border. Other clients just - -- get shrinked in one direction. - - gap_factor = (useless_gap / 100) * 2 - - if this_x == 0 - then - g.width = g.width - (2 + gap_factor) * useless_gap - g.x = g.x + useless_gap - else - g.width = g.width - (1 + gap_factor) * useless_gap - end - - if this_y == 0 - then - g.height = g.height - (2 + gap_factor) * useless_gap - g.y = g.y + useless_gap - else - g.height = g.height - (1 + gap_factor) * useless_gap - end - end - -- End of useless gap. - - c:geometry(g) - - cell = cell + 1 - if cell == cells then - cell = 0 - strip = strip + 1 - end - end - end -end - ---- Horizontal fair layout. --- @param screen The screen to arrange. -uselessfair.horizontal = {} -uselessfair.horizontal.name = "uselessfairh" -function uselessfair.horizontal.arrange(p) - return fair(p, "east") -end - --- Vertical fair layout. --- @param screen The screen to arrange. -uselessfair.name = "uselessfair" -function uselessfair.arrange(p) - return fair(p, "south") -end - -return uselessfair diff --git a/awesome/.config/awesome/lain/layout/uselesspiral.lua b/awesome/.config/awesome/lain/layout/uselesspiral.lua deleted file mode 100644 index 3164c75..0000000 --- a/awesome/.config/awesome/lain/layout/uselesspiral.lua +++ /dev/null @@ -1,110 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2009 Uli Schlachter - * (c) 2008 Julien Danjolu - ---]] - -local beautiful = require("beautiful") -local ipairs = ipairs -local tonumber = tonumber - -local uselesspiral = {} - -local function spiral(p, spiral) - -- A useless gap (like the dwm patch) can be defined with - -- beautiful.useless_gap_width. - local useless_gap = tonumber(beautiful.useless_gap_width) or 0 - - local wa = p.workarea - local cls = p.clients - local n = #cls - - local static_wa = wa - - for k, c in ipairs(cls) do - if k < n then - if k % 2 == 0 then - wa.height = wa.height / 2 - else - wa.width = wa.width / 2 - end - end - - if k % 4 == 0 and spiral then - wa.x = wa.x - wa.width - elseif k % 2 == 0 or - (k % 4 == 3 and k < n and spiral) then - wa.x = wa.x + wa.width - end - - if k % 4 == 1 and k ~= 1 and spiral then - wa.y = wa.y - wa.height - elseif k % 2 == 1 and k ~= 1 or - (k % 4 == 0 and k < n and spiral) then - wa.y = wa.y + wa.height - end - - local wa2 = {} - wa2.x = wa.x - wa2.y = wa.y - wa2.height = wa.height - wa2.width = wa.width - - -- Useless gap. - if useless_gap > 0 - then - -- Top and left clients are shrinked by two steps and - -- get moved away from the border. Other clients just - -- get shrinked in one direction. - - top = false - left = false - - gap_factor = (useless_gap / 100) * 2 - - if wa2.y == static_wa.y then - top = true - end - - if wa2.x == static_wa.x then - left = true - end - - if top then - wa2.height = wa2.height - (2 + gap_factor) * useless_gap - wa2.y = wa2.y + useless_gap - else - wa2.height = wa2.height - (1 + gap_factor) * useless_gap - end - - if left then - wa2.width = wa2.width - (2 + gap_factor) * useless_gap - wa2.x = wa2.x + useless_gap - else - wa2.width = wa2.width - (1 + gap_factor) * useless_gap - end - end - -- End of useless gap. - - c:geometry(wa2) - end -end - ---- Dwindle layout -uselesspiral.dwindle = {} -uselesspiral.dwindle.name = "uselessdwindle" -function uselesspiral.dwindle.arrange(p) - return spiral(p, false) -end - ---- Spiral layout -uselesspiral.name = "uselesspiral" -function uselesspiral.arrange(p) - return spiral(p, true) -end - -return uselesspiral diff --git a/awesome/.config/awesome/lain/layout/uselesstile.lua b/awesome/.config/awesome/lain/layout/uselesstile.lua deleted file mode 100644 index e496500..0000000 --- a/awesome/.config/awesome/lain/layout/uselesstile.lua +++ /dev/null @@ -1,230 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2009 Donald Ephraim Curtis - * (c) 2008 Julien Danjolu - ---]] - -local tag = require("awful.tag") -local beautiful = require("beautiful") -local ipairs = ipairs -local math = { floor = math.floor, - max = math.max, - min = math.min } -local tonumber = tonumber - -local uselesstile = {} - -local function tile_group(cls, wa, orientation, fact, group) - -- A useless gap (like the dwm patch) can be defined with - -- beautiful.useless_gap_width . - local useless_gap = tonumber(beautiful.useless_gap_width) or 0 - - -- get our orientation right - local height = "height" - local width = "width" - local x = "x" - local y = "y" - if orientation == "top" or orientation == "bottom" then - height = "width" - width = "height" - x = "y" - y = "x" - end - - -- make this more generic (not just width) - available = wa[width] - (group.coord - wa[x]) - - -- find our total values - local total_fact = 0 - local min_fact = 1 - local size = group.size - for c = group.first,group.last do - -- determine the width/height based on the size_hint - local i = c - group.first +1 - local size_hints = cls[c].size_hints - local size_hint = size_hints["min_"..width] or size_hints["base_"..width] or 0 - size_hint = size_hint + cls[c].border_width*2 - size = math.max(size_hint, size) - - -- calculate the height - if not fact[i] then - fact[i] = min_fact - else - min_fact = math.min(fact[i],min_fact) - end - total_fact = total_fact + fact[i] - end - size = math.min(size, available) - - local coord = wa[y] - local geom = {} - local used_size = 0 - local unused = wa[height] - local stat_coord = wa[x] - --stat_coord = size - for c = group.first,group.last do - local i = c - group.first +1 - geom[width] = size - geom[height] = math.floor(unused * fact[i] / total_fact) - geom[x] = group.coord - geom[y] = coord - - coord = coord + geom[height] - unused = unused - geom[height] - total_fact = total_fact - fact[i] - used_size = math.max(used_size, geom[width]) - - -- Useless gap - if useless_gap > 0 - then - -- Top and left clients are shrinked by two steps and - -- get moved away from the border. Other clients just - -- get shrinked in one direction. - - top = false - left = false - - gap_factor = (useless_gap / 100) * 2 - - if geom[y] == wa[y] then - top = true - end - - if geom[x] == 0 or geom[x] == wa[x] then - left = true - end - - if top then - geom[height] = geom[height] - (2 + gap_factor) * useless_gap - geom[y] = geom[y] + useless_gap - else - geom[height] = geom[height] - (1 + gap_factor) * useless_gap - end - - if left then - geom[width] = geom[width] - (2 + gap_factor) * useless_gap - geom[x] = geom[x] + useless_gap - else - geom[width] = geom[width] - (1 + gap_factor) * useless_gap - end - end - -- End of useless gap. - - geom = cls[c]:geometry(geom) - end - - return used_size -end - -local function tile(param, orientation) - local t = tag.selected(param.screen) - orientation = orientation or "right" - - -- this handles are different orientations - local height = "height" - local width = "width" - local x = "x" - local y = "y" - if orientation == "top" or orientation == "bottom" then - height = "width" - width = "height" - x = "y" - y = "x" - end - - local cls = param.clients - local nmaster = math.min(tag.getnmaster(t), #cls) - local nother = math.max(#cls - nmaster,0) - - local mwfact = tag.getmwfact(t) - local wa = param.workarea - local ncol = tag.getncol(t) - - local data = tag.getdata(t).windowfact - - if not data then - data = {} - tag.getdata(t).windowfact = data - end - - local coord = wa[x] - local place_master = true - if orientation == "left" or orientation == "top" then - -- if we are on the left or top we need to render the other windows first - place_master = false - end - - -- this was easier than writing functions because there is a lot of data we need - for d = 1,2 do - if place_master and nmaster > 0 then - local size = wa[width] - if nother > 0 then - size = math.min(wa[width] * mwfact, wa[width] - (coord - wa[x])) - end - if not data[0] then - data[0] = {} - end - coord = coord + tile_group(cls, wa, orientation, data[0], {first=1, last=nmaster, coord = coord, size = size}) - end - - if not place_master and nother > 0 then - local last = nmaster - - -- we have to modify the work area size to consider left and top views - local wasize = wa[width] - if nmaster > 0 and (orientation == "left" or orientation == "top") then - wasize = wa[width] - wa[width]*mwfact - end - for i = 1,ncol do - -- Try to get equal width among remaining columns - local size = math.min( (wasize - (coord - wa[x])) / (ncol - i + 1) ) - local first = last + 1 - last = last + math.floor((#cls - last)/(ncol - i + 1)) - -- tile the column and update our current x coordinate - if not data[i] then - data[i] = {} - end - coord = coord + tile_group(cls, wa, orientation, data[i], { first = first, last = last, coord = coord, size = size }) - end - end - place_master = not place_master - end - -end - -uselesstile.right = {} -uselesstile.right.name = "uselesstile" -uselesstile.right.arrange = tile - ---- The main tile algo, on left. --- @param screen The screen number to tile. -uselesstile.left = {} -uselesstile.left.name = "uselesstileleft" -function uselesstile.left.arrange(p) - return tile(p, "left") -end - ---- The main tile algo, on bottom. --- @param screen The screen number to tile. -uselesstile.bottom = {} -uselesstile.bottom.name = "uselesstilebottom" -function uselesstile.bottom.arrange(p) - return tile(p, "bottom") -end - ---- The main tile algo, on top. --- @param screen The screen number to tile. -uselesstile.top = {} -uselesstile.top.name = "uselesstiletop" -function uselesstile.top.arrange(p) - return tile(p, "top") -end - -uselesstile.arrange = uselesstile.right.arrange -uselesstile.name = uselesstile.right.name - -return uselesstile diff --git a/awesome/.config/awesome/lain/scripts/dfs b/awesome/.config/awesome/lain/scripts/dfs deleted file mode 100755 index d78d2bb..0000000 --- a/awesome/.config/awesome/lain/scripts/dfs +++ /dev/null @@ -1,387 +0,0 @@ -#!/bin/bash -# -# Adapted from Eridan's "fs" (cleanup, enhancements and switch to bash/Linux) -# JM, 10/12/2004 -# -# Integrated into Lain in september 2013 -# https://github.com/copycat-killer/lain - -# Requires gawk - -# ------------------------------------------------------------------------- -# Decoding options -# ------------------------------------------------------------------------- -USAGE="Usage: $0 [-h(elp)] | [-n(arrow mode)] | [-w(eb output)]" - -NARROW_MODE=0 -WEB_OUTPUT=0 - -while [ $# -gt 0 ]; do -case "$1" in -"-h" ) -echo $USAGE -exit -;; -"-d" ) -DEBUG=1 -;; -"-n" ) -NARROW_MODE=1 -;; -"-w" ) -WEB_OUTPUT=1 -;; -* ) -echo $USAGE -exit -;; -esac -shift -done - -# ------------------------------------------------------------------------- -# Preparations -# ------------------------------------------------------------------------- -SYSTEM=`uname -s` -PATTERN="/" - -case "$SYSTEM" in -"Linux" ) -DF_COMMAND="/usr/bin/env df -k" -SORT_COMMAND="/usr/bin/env sort -k6" -AWK_COMMAND="/usr/bin/env awk" -;; -* ) -DF_COMMAND="/bin/df -k" -SORT_COMMAND="/usr/bin/sort -k6" -AWK_COMMAND="/usr/bin/env gawk" -;; -esac - -# ------------------------------------------------------------------------- -# Grabbing "df" result -# ------------------------------------------------------------------------- -DF_RESULT=`$DF_COMMAND` -if [ ! -z $DEBUG ]; then -echo "--> DF_RESULT:" -echo "$DF_RESULT" -echo "" -fi - -# ------------------------------------------------------------------------- -# Preprocessing "df" result, to join split logical lines -# ------------------------------------------------------------------------- -PREPROCESSING_RESULT=` \ - echo "$DF_RESULT" | $AWK_COMMAND -v PATTERN=$PATTERN \ - ' - NF == 1 { - printf ("%s", $0) - } - -NF == 5 { - printf ("%s\n", $0) -} - -NF > 6 { -} - -NF == 6 { - printf ("%s\n", $0) -}' -` -if [ ! -z $DEBUG ]; then -echo "--> PREPROCESSING_RESULT:" -echo "$PREPROCESSING_RESULT" -echo "" -fi - -SORTED_FILE_SYSTEMS_INFO=`echo "$PREPROCESSING_RESULT" | $SORT_COMMAND` - -if [ ! -z $DEBUG ]; then -echo "--> SORTED_FILE_SYSTEMS_INFO:" -echo "$SORTED_FILE_SYSTEMS_INFO" -echo "" -fi - -# ------------------------------------------------------------------------- -# Computing mount point max length -# ------------------------------------------------------------------------- -MOUNT_POINT_MAX_LENGTH=` \ - echo $SORTED_FILE_SYSTEMS_INFO | $AWK_COMMAND -v PATTERN=$PATTERN \ - ' - BEGIN { - mount_point_length_max = 15; - } - -END { - printf ("%d", mount_point_length_max); -} - -$0 ~ PATTERN { -# printf ("$6 = %s\n", $6); - - mount_point = $6; -# printf ("mount_point = %s\n", mount_point); - - mount_point_length = length (mount_point); -# printf ("mount_point_length = %d\n", mount_point_length); - - if (mount_point_length > mount_point_length_max) - mount_point_length_max = mount_point_length; -}' -` -if [ ! -z $DEBUG ]; then -echo "MOUNT_POINT_MAX_LENGTH: $MOUNT_POINT_MAX_LENGTH" -fi - -# ------------------------------------------------------------------------- -# Computing mount point data max size -# ------------------------------------------------------------------------- -MOUNT_POINT_MAX_SIZE=` \ - echo "$SORTED_FILE_SYSTEMS_INFO" | $AWK_COMMAND -v PATTERN=$PATTERN \ - ' - BEGIN { - mount_point_size_max = 0; - } - -END { - printf ("%d", mount_point_size_max); -} - -$0 ~ PATTERN { -# df -k shows k_bytes! -# printf ("$2 = %s\n", $2); - - mount_point_size = $2 * 1024; -# printf ("mount_point_size = %d\n", mount_point_size); - - if (mount_point_size > mount_point_size_max) - mount_point_size_max = mount_point_size; -}' -` -if [ ! -z $DEBUG ]; then -echo "MOUNT_POINT_MAX_SIZE: $MOUNT_POINT_MAX_SIZE" -fi - -# ------------------------------------------------------------------------- -# Let's go! -# ------------------------------------------------------------------------- -echo "$SORTED_FILE_SYSTEMS_INFO" | $AWK_COMMAND -v DEBUG=$DEBUG -v PATTERN=$PATTERN -v NARROW_MODE=$NARROW_MODE -v LEFT_COLUMN=$MOUNT_POINT_MAX_LENGTH -v MAX_SIZE=$MOUNT_POINT_MAX_SIZE -v SCALE=$SCALE -v WEB_OUTPUT=$WEB_OUTPUT \ - ' -# {printf ("$0 = %s\n", $0);} -# {printf ("$1 = %s\n", $1);} -# {printf ("PATTERN = %s\n", PATTERN);} -# {printf ("LEFT_COLUMN = %s\n", LEFT_COLUMN);} - - BEGIN { - k_bytes = 1024.0; - m_bytes = 1024.0 * k_bytes; - g_bytes = 1024.0 * m_bytes; - t_bytes = 1024.0 * g_bytes; - - if (WEB_OUTPUT) - { - all_stars = "**************************************************"; - current_date = strftime ("%d-%m-%Y @ %H:%M:%S", localtime (systime ())); - free_threshold = 10; # % - - printf ("<!-- DEBUT CONTENU -->\n"); - - printf ( \ - "<A NAME=\"top\"></A>\n" \ - "<P ALIGN=CENTER><SPAN CLASS=\"titleblue\">%s</SPAN><SPAN CLASS=\"textbold\"> -- STATUS OF <SPAN CLASS=\"titlered\">ALCOR</SPAN> FILE SYSTEMS</SPAN></P><BR>\n", - current_date ) - - printf ("<TABLE WIDTH=\"100%%\" BORDER=1>\n"); - - printf ( \ - "<TR>\n" \ - "<TD ALIGN=LEFT><STRONG>Mount point</STRONG></TD>\n" \ - "<TD ALIGN=CENTER><STRONG>%% Usato (<SPAN CLASS=\"titleblue\">*</SPAN>)" \ - " - %% Free (<SPAN CLASS=\"titlegreen\">*</SPAN>)</STRONG></TD>\n" \ - "<TD ALIGN=CENTER><STRONG>%% Used</STRONG></TD>\n" \ - "<TD ALIGN=CENTER><STRONG>Free</STRONG></TD>\n" \ - "<TD ALIGN=CENTER><STRONG>Total</STRONG></TD>\n" \ - "</TR>\n" ); - } - else - { - narrow_margin = " "; -# printf ("%-*s", LEFT_COLUMN + 2, "Mount point"); - if (NARROW_MODE) - printf ("\n%s", narrow_margin); - else - printf ("%-*s", LEFT_COLUMN + 2, ""); - print " Used Free Total "; - if (! NARROW_MODE) - print ""; - } - } - -END { - if (WEB_OUTPUT) - { - printf ("</TABLE>\n"); - - printf ("<!-- FIN CONTENU -->\n"); - } - else - { - if (NARROW_MODE) - printf ("%s", narrow_margin); - else - printf ("%-*s", LEFT_COLUMN + 2, ""); - print "|----|----|----|----|----|----|----|----|----|----|" - if (NARROW_MODE) - printf ("\n%s", narrow_margin); - else - printf ("%-*s", LEFT_COLUMN + 2, ""); - print "0 10 20 30 40 50 60 70 80 90 100"; - print ""; - } -} - -$0 ~ PATTERN { - - if (index ($0, "members") == 0 && index ($0, "Download") == 0 && index ($0, "admin") == 0) - { -# df -k shows k_bytes! - - total_size = $2 * k_bytes; - free_size = $4 * k_bytes; - percentage_occupied = substr($5, 0, 3); - mount_point = $6; - - percentage_free = int (100 - percentage_occupied); - -# reduction_factor: 2 - stars_number = int (percentage_occupied / 2); - - if (WEB_OUTPUT) - { - posGroup = index (mount_point, "scratch"); - if (posGroup == 0) - posGroup = index (mount_point, "u1"); - if (posGroup == 0) - posGroup = index (mount_point, "u2"); - if (posGroup == 0) - posGroup = index (mount_point, "u4"); - if (posGroup == 0) - posGroup = index (mount_point, "u5"); - - printf ("<TR>\n"); - - if (posGroup > 0 || percentage_free < free_threshold) - { - if (percentage_free < free_threshold) - { - class = "titlered"; - if (posGroup == 0) - posGroup = 1; # to display the whole mount_point in this color anyway - } - else if ((index (mount_point, "scratch") != 0) || (index (mount_point, "u1") != 0) || (index (mount_point, "u2") != 0)) - { - class = "titleorange"; - posGroup = 1; # to display the whole mount_point in this color - } - else if ((index (mount_point, "u4") != 0) || (index (mount_point, "u5") != 0)) - { - class = "titlebrown"; - posGroup = 1; # to display the whole mount_point in this color - } - - printf ( \ - "<TD ALIGN=LEFT>%s<SPAN CLASS=\"%s\">%s</SPAN></TD>\n", - substr (mount_point, 1, posGroup - 1), - class, - substr (mount_point, posGroup) ); - } - else - { - printf ("<TD ALIGN=LEFT>%s</TD>\n", mount_point); - } - - printf ( \ - "<TD ALIGN=CENTER><SPAN CLASS=\"titleblue\">%s</SPAN><SPAN CLASS=\"titlegreen\">%s</SPAN></TD>\n", - substr (all_stars, 1, stars_number), substr (all_stars, stars_number + 1, 49) ); - - if (percentage_free < free_threshold) - { - color_beginning = "<SPAN CLASS=\"titlered\">"; - color_end = "</SPAN>" - } - else - { - color_beginning = ""; - color_end = "" - } - - if (total_size > 1 * t_bytes) - printf ( \ - "<TD ALIGN=RIGHT>%s%3d%%%s</TD><TD ALIGN=RIGHT>%5.1f Tb</TD><TD ALIGN=RIGHT>%5.1f Tb</TD>\n", \ - color_beginning, percentage_occupied, color_end, free_size / t_bytes, total_size / t_bytes \ - ); - else if (total_size > 1 * g_bytes) - printf ( \ - "<TD ALIGN=RIGHT>%s%3d%%%s</TD><TD ALIGN=RIGHT>%5.1f Gb</TD><TD ALIGN=RIGHT>%5.1f Gb</TD>\n", \ - color_beginning, percentage_occupied, color_end, free_size / g_bytes, total_size / g_bytes \ - ); - else if (total_size > 1 * m_byptes) - printf ( \ - "<TD ALIGN=RIGHT>%s%3d%%%s</TD><TD ALIGN=RIGHT>%5.1f Mb</TD><TD ALIGN=RIGHT>%5.1f Mb</TD>\n", \ - color_beginning, percentage_occupied, color_end, free_size / m_bytes, total_size / m_bytes \ - ); - else - printf ( \ - "<TD ALIGN=RIGHT>%s%3d%%%s</TD><TD ALIGN=RIGHT>%5.1f Kb</TD><TD ALIGN=RIGHT>%5.1f Kb</TD>\n", \ - color_beginning, percentage_occupied, color_end, free_size / k_bytes, total_size / k_bytes \ - ); - - printf ("</TR>\n"); - } - - else - { -# printf ("percentage_occupied = %d\n", percentage_occupied); -# printf ("percentage_free = %d\n", percentage_free); - - printf ("%-*s", LEFT_COLUMN + 2, mount_point); - if (NARROW_MODE) - printf ("\n%s", narrow_margin); - -# printf ("stars_number = %d\n", stars_number); - - printf ("|"); - for (i = 1; i <= stars_number; i++) - { - printf ("%s", "*"); - } - for (i = stars_number + 1; i <= 49; i++) - { - printf ("%s", "-"); - } - - - if (total_size > 1 * t_bytes) - printf ( \ - "| %3d%% %5.1f %5.1f Tb\n", \ - percentage_occupied, free_size / t_bytes, total_size / t_bytes \ - ); - else if (total_size > 1 * g_bytes) - printf ( \ - "| %3d%% %5.1f %5.1f Gb\n", \ - percentage_occupied, free_size / g_bytes, total_size / g_bytes \ - ); - else if (total_size > 1 * m_byptes) - printf ( \ - "| %3d%% %5.1f %5.1f Mb\n", \ - percentage_occupied, free_size / m_bytes, total_size / m_bytes \ - ); - else - printf ( \ - "| %3d%% %5.1f %5.1f Kb\n", \ - percentage_occupied, free_size / k_bytes, total_size / k_bytes \ - ); - } - } # if -}' diff --git a/awesome/.config/awesome/lain/scripts/mpdcover b/awesome/.config/awesome/lain/scripts/mpdcover deleted file mode 100755 index f6cf0d6..0000000 --- a/awesome/.config/awesome/lain/scripts/mpdcover +++ /dev/null @@ -1,68 +0,0 @@ -#!/bin/bash -# -# A simple cover fetcher script for current playing song on mpd. -# -# Author : Wolfgang Mueller -# -# Adapted for Lain internal use. -# https://github.com/copycat-killer/lain -# -# You can use, edit and redistribute this script in any way you like. -# -# Dependencies: imagemagick. -# -# Usage: mpdcover <music_directory> <song_file> <cover_resize> <default_art> - -# Configuration------------------------------------------------------- - -# Music directory -MUSIC_DIR=$1 - -# Song file -file=$2 - -# Regex expression used for image search -IMG_REG="(Front|front|Cover|cover|Art|art|Folder|folder)\.(jpg|jpeg|png|gif)$" - -# Path of temporary resized cover -TEMP_PATH="/tmp/mpdcover.png" - -# Resize cover -COVER_RESIZE="$3x$3" - -if [ $COVER_RESIZE == "x" ]; then - COVER_RESIZE="100x100" -fi - -# The default cover to use (optional) -DEFAULT_ART=$4 - -# Thumbnail background (transparent) -COVER_BACKGROUND="none" - -#-------------------------------------------------------------------- - -# check if anything is playing at all -[[ -z $file ]] && exit 1 - -# Art directory -art="$MUSIC_DIR/${file%/*}" - -# find every file that matches IMG_REG set the first matching file to be the -# cover. -cover="$(find "$art/" -maxdepth 1 -type f | egrep -i -m1 "$IMG_REG")" - -# when no cover is found, use DEFAULT_ART as cover -cover="${cover:=$DEFAULT_ART}" - -# check if art is available -if [[ -n $cover ]]; then - if [[ -n $COVER_RESIZE ]]; then - convert "$cover" -thumbnail $COVER_RESIZE -gravity "center" -background "$COVER_BACKGROUND" -extent $COVER_RESIZE "$TEMP_PATH" - cover="$TEMP_PATH" - fi -else - rm $TEMP_PATH -fi - -exit 0 diff --git a/awesome/.config/awesome/lain/util/init.lua b/awesome/.config/awesome/lain/util/init.lua deleted file mode 100644 index 2f28b9a..0000000 --- a/awesome/.config/awesome/lain/util/init.lua +++ /dev/null @@ -1,213 +0,0 @@ - ---[[ - - Lain - Layouts, widgets and utilities for Awesome WM - - Utilities section - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local awful = require("awful") -local beautiful = require("beautiful") -local math = { sqrt = math.sqrt } -local mouse = mouse -local pairs = pairs -local string = { gsub = string.gsub } -local client = client -local screen = screen -local tonumber = tonumber - -local wrequire = require("lain.helpers").wrequire -local setmetatable = setmetatable - --- Lain utilities submodule --- lain.util -local util = { _NAME = "lain.util" } - --- Like awful.menu.clients, but only show clients of currently selected --- tags. -function util.menu_clients_current_tags(menu, args) - -- List of currently selected tags. - local cls_tags = awful.tag.selectedlist(mouse.screen) - - -- Final list of menu items. - local cls_t = {} - - if cls_tags == nil then return nil end - - -- For each selected tag get all clients of that tag and add them to - -- the menu. A click on a menu item will raise that client. - for i = 1,#cls_tags - do - local t = cls_tags[i] - local cls = t:clients() - - for k, c in pairs(cls) - do - cls_t[#cls_t + 1] = { awful.util.escape(c.name) or "", - function () - c.minimized = false - client.focus = c - c:raise() - end, - c.icon } - end - end - - -- No clients? Then quit. - if #cls_t <= 0 then return nil end - - -- menu may contain some predefined values, otherwise start with a - -- fresh menu. - if not menu then menu = {} end - - -- Set the list of items and show the menu. - menu.items = cls_t - local m = awful.menu.new(menu) - m:show(args) - return m -end - --- Magnify a client: Set it to "float" and resize it. -function util.magnify_client(c) - if not awful.client.floating.get(c) then - awful.client.floating.set(c, true) - - local mg = screen[mouse.screen].geometry - local tag = awful.tag.selected(mouse.screen) - local mwfact = awful.tag.getmwfact(tag) - local g = {} - g.width = math.sqrt(mwfact) * mg.width - g.height = math.sqrt(mwfact) * mg.height - g.x = mg.x + (mg.width - g.width) / 2 - g.y = mg.y + (mg.height - g.height) / 2 - c:geometry(g) - else - awful.client.floating.set(c, false) - end -end - --- Read the nice value of pid from /proc. -local function get_nice_value(pid) - local n = first_line('/proc/' .. pid .. '/stat') - if n == nil - then - -- This should not happen. But I don't want to crash, either. - return 0 - end - - -- Remove pid and tcomm. This is necessary because tcomm may contain - -- nasty stuff such as whitespace or additional parentheses... - n = string.gsub(n, '.*%) ', '') - - -- Field number 17 now is the nice value. - fields = split(n, ' ') - return tonumber(fields[17]) -end - --- To be used as a signal handler for "focus" --- This requires beautiful.border_focus{,_highprio,_lowprio}. -function util.niceborder_focus(c) - local n = get_nice_value(c.pid) - if n == 0 - then - c.border_color = beautiful.border_focus - elseif n < 0 - then - c.border_color = beautiful.border_focus_highprio - else - c.border_color = beautiful.border_focus_lowprio - end -end - --- To be used as a signal handler for "unfocus" --- This requires beautiful.border_normal{,_highprio,_lowprio}. -function util.niceborder_unfocus(c) - local n = get_nice_value(c.pid) - if n == 0 - then - c.border_color = beautiful.border_normal - elseif n < 0 - then - c.border_color = beautiful.border_normal_highprio - else - c.border_color = beautiful.border_normal_lowprio - end -end - --- Non-empty tag browsing --- direction in {-1, 1} <-> {previous, next} non-empty tag -function util.tag_view_nonempty(direction, sc) - local s = sc or mouse.screen or 1 - local scr = screen[s] - - for i = 1, #awful.tag.gettags(s) do - awful.tag.viewidx(direction,s) - if #awful.client.visible(s) > 0 then - return - end - end -end - --- {{{ Dynamic tagging --- --- Add a new tag -function util.add_tag(mypromptbox) - awful.prompt.run({prompt="New tag name: "}, mypromptbox[mouse.screen].widget, - function(text) - if text:len() > 0 then - props = { selected = true } - tag = awful.tag.add(new_name, props) - tag.name = text - tag:emit_signal("property::name") - end - end) -end - --- Rename current tag --- @author: minism -function util.rename_tag(mypromptbox) - local tag = awful.tag.selected(mouse.screen) - awful.prompt.run({prompt="Rename tag: "}, mypromptbox[mouse.screen].widget, - function(text) - if text:len() > 0 then - tag.name = text - tag:emit_signal("property::name") - end - end) -end - --- Move current tag --- pos in {-1, 1} <-> {previous, next} tag position -function util.move_tag(pos) - local tag = awful.tag.selected(mouse.screen) - local idx = awful.tag.getidx(tag) - if tonumber(pos) <= -1 then - awful.tag.move(idx - 1, tag) - else - awful.tag.move(idx + 1, tag) - end -end - --- Remove current tag (if empty) --- Any rule set on the tag shall be broken -function util.remove_tag() - local tag = awful.tag.selected(mouse.screen) - local prevtag = awful.tag.gettags(mouse.screen)[awful.tag.getidx(tag) - 1] - awful.tag.delete(tag, prevtag) -end --- --- }}} - --- On the fly useless gaps change -function util.useless_gaps_resize(thatmuch) - beautiful.useless_gap_width = tonumber(beautiful.useless_gap_width) + thatmuch - awful.layout.arrange(mouse.screen) -end - -return setmetatable(util, { __index = wrequire }) diff --git a/awesome/.config/awesome/lain/util/markup.lua b/awesome/.config/awesome/lain/util/markup.lua deleted file mode 100644 index d367bca..0000000 --- a/awesome/.config/awesome/lain/util/markup.lua +++ /dev/null @@ -1,69 +0,0 @@ - ---[[ - - Licensed under MIT License - * (c) 2013, Luke Bonham - * (c) 2009, Uli Schlachter - * (c) 2009, Majic - ---]] - -local beautiful = require("beautiful") -local tostring = tostring -local setmetatable = setmetatable - --- Lain markup util submodule --- lain.util.markup -local markup = {} - -local fg = {} -local bg = {} - --- Convenience tags. -function markup.bold(text) return '<b>' .. tostring(text) .. '</b>' end -function markup.italic(text) return '<i>' .. tostring(text) .. '</i>' end -function markup.strike(text) return '<s>' .. tostring(text) .. '</s>' end -function markup.underline(text) return '<u>' .. tostring(text) .. '</u>' end -function markup.monospace(text) return '<tt>' .. tostring(text) .. '</tt>' end -function markup.big(text) return '<big>' .. tostring(text) .. '</big>' end -function markup.small(text) return '<small>' .. tostring(text) .. '</small>' end - --- Set the font. -function markup.font(font, text) - return '<span font="' .. tostring(font) .. '">' .. tostring(text) ..'</span>' -end - --- Set the foreground. -function fg.color(color, text) - return '<span foreground="' .. tostring(color) .. '">' .. tostring(text) .. '</span>' -end - --- Set the background. -function bg.color(color, text) - return '<span background="' .. tostring(color) .. '">' .. tostring(text) .. '</span>' -end - --- Context: focus -function fg.focus(text) return fg.color(beautiful.fg_focus, text) end -function bg.focus(text) return bg.color(beautiful.bg_focus, text) end -function markup.focus(text) return bg.focus(fg.focus(text)) end - --- Context: normal -function fg.normal(text) return fg.color(beautiful.fg_normal, text) end -function bg.normal(text) return bg.color(beautiful.bg_normal, text) end -function markup.normal(text) return bg.normal(fg.normal(text)) end - --- Context: urgent -function fg.urgent(text) return fg.color(beautiful.fg_urgent, text) end -function bg.urgent(text) return bg.color(beautiful.bg_urgent, text) end -function markup.urgent(text) return bg.urgent(fg.urgent(text)) end - -markup.fg = fg -markup.bg = bg - --- link markup.{fg,bg}(...) calls to markup.{fg,bg}.color(...) -setmetatable(markup.fg, { __call = function(_, ...) return markup.fg.color(...) end }) -setmetatable(markup.bg, { __call = function(_, ...) return markup.bg.color(...) end }) - --- link markup(...) calls to markup.fg.color(...) -return setmetatable(markup, { __call = function(_, ...) return markup.fg.color(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/alsa.lua b/awesome/.config/awesome/lain/widgets/alsa.lua deleted file mode 100644 index 28bb05c..0000000 --- a/awesome/.config/awesome/lain/widgets/alsa.lua +++ /dev/null @@ -1,65 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010, Adrian C. <anrxc@sysphere.org> - ---]] - -local newtimer = require("lain.helpers").newtimer - -local wibox = require("wibox") - -local io = { popen = io.popen } -local string = { match = string.match } - -local setmetatable = setmetatable - --- ALSA volume --- lain.widgets.alsa -local alsa = {} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 5 - local channel = args.channel or "Master" - local settings = args.settings or function() end - - alsa.widget = wibox.widget.textbox('') - - function alsa.update() - local f = assert(io.popen('amixer get ' .. channel)) - local mixer = f:read("*all") - f:close() - - volume_now = {} - - volume_now.level, volume_now.status = string.match(mixer, "([%d]+)%%.*%[([%l]*)") - - if volume_now.level == nil - then - volume_now.level = "0" - volume_now.status = "off" - end - - if volume_now.status == "" - then - if volume_now.level == "0" - then - volume_now.status = "off" - else - volume_now.status = "on" - end - end - - widget = alsa.widget - settings() - end - - newtimer("alsa", timeout, alsa.update) - - return setmetatable(alsa, { __index = alsa.widget }) -end - -return setmetatable(alsa, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/alsabar.lua b/awesome/.config/awesome/lain/widgets/alsabar.lua deleted file mode 100644 index 365ac2d..0000000 --- a/awesome/.config/awesome/lain/widgets/alsabar.lua +++ /dev/null @@ -1,175 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2013, Rman - ---]] - -local newtimer = require("lain.helpers").newtimer - -local awful = require("awful") -local beautiful = require("beautiful") -local naughty = require("naughty") - -local io = { popen = io.popen } -local math = { modf = math.modf } -local string = { format = string.format, - match = string.match, - rep = string.rep } -local tonumber = tonumber - -local setmetatable = setmetatable - --- ALSA volume bar --- lain.widgets.alsabar -local alsabar = -{ - channel = "Master", - step = "5%", - - colors = - { - background = beautiful.bg_normal, - mute = "#EB8F8F", - unmute = "#A4CE8A" - }, - - terminal = terminal or "xterm", - mixer = terminal .. " -e alsamixer", - - notifications = - { - font = beautiful.font:sub(beautiful.font:find(""), beautiful.font:find(" ")), - font_size = "11", - color = beautiful.fg_normal, - bar_size = 18 - }, - - _current_level = 0, - _muted = false -} - -function alsabar.notify() - alsabar.update() - - local preset = - { - title = "", - text = "", - timeout = 4, - font = alsabar.notifications.font .. " " .. - alsabar.notifications.font_size, - fg = alsabar.notifications.color - } - - if alsabar._muted - then - preset.title = alsabar.channel .. " - Muted" - else - preset.title = alsabar.channel .. " - " .. alsabar._current_level * 100 .. "%" - end - - int = math.modf(alsabar._current_level * alsabar.notifications.bar_size) - preset.text = "[" - .. string.rep("|", int) - .. string.rep(" ", alsabar.notifications.bar_size - int) - .. "]" - - if alsabar._notify ~= nil then - alsabar._notify = naughty.notify ({ - replaces_id = alsabar._notify.id, - preset = preset - }) - else - alsabar._notify = naughty.notify ({ - preset = preset - }) - end -end - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 4 - local settings = args.settings or function() end - local width = args.width or 63 - local height = args.heigth or 1 - local ticks = args.ticks or false - local ticks_size = args.ticks_size or 7 - local vertical = args.vertical or false - - alsabar.channel = args.channel or alsabar.channel - alsabar.step = args.step or alsabar.step - alsabar.colors = args.colors or alsabar.colors - alsabar.notifications = args.notifications or alsabar.notifications - - alsabar.bar = awful.widget.progressbar() - - alsabar.bar:set_background_color(alsabar.colors.background) - alsabar.bar:set_color(alsabar.colors.unmute) - alsabar.tooltip = awful.tooltip({ objects = { alsabar.bar } }) - alsabar.bar:set_width(width) - alsabar.bar:set_height(height) - alsabar.bar:set_ticks(ticks) - alsabar.bar:set_ticks_size(ticks_size) - alsabar.bar:set_vertical(vertical) - - function alsabar.update() - -- Get mixer control contents - local f = io.popen("amixer get " .. alsabar.channel) - local mixer = f:read("*all") - f:close() - - -- Capture mixer control state: [5%] ... ... [on] - local volu, mute = string.match(mixer, "([%d]+)%%.*%[([%l]*)") - - if volu == nil then - volu = 0 - mute = "off" - end - - alsabar._current_level = tonumber(volu) / 100 - alsabar.bar:set_value(alsabar._current_level) - - if not mute and tonumber(volu) == 0 or mute == "off" - then - alsabar._muted = true - alsabar.tooltip:set_text (" [Muted] ") - alsabar.bar:set_color(alsabar.colors.mute) - else - alsabar._muted = false - alsabar.tooltip:set_text(string.format(" %s:%s ", alsabar.channel, volu)) - alsabar.bar:set_color(alsabar.colors.unmute) - end - - volume_now = {} - volume_now.level = tonumber(volu) - volume_now.status = mute - settings() - end - - newtimer("alsabar", timeout, alsabar.update) - - alsabar.bar:buttons (awful.util.table.join ( - awful.button ({}, 1, function() - awful.util.spawn(alsabar.mixer) - end), - awful.button ({}, 3, function() - awful.util.spawn(string.format("amixer set %s toggle", alsabar.channel)) - alsabar.update() - end), - awful.button ({}, 4, function() - awful.util.spawn(string.format("amixer set %s %s+", alsabar.channel, alsabar.step)) - alsabar.update() - end), - awful.button ({}, 5, function() - awful.util.spawn(string.format("amixer set %s %s-", alsabar.channel, alsabar.step)) - alsabar.update() - end) - )) - - return alsabar -end - -return setmetatable(alsabar, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/base.lua b/awesome/.config/awesome/lain/widgets/base.lua deleted file mode 100644 index 3d4ce9e..0000000 --- a/awesome/.config/awesome/lain/widgets/base.lua +++ /dev/null @@ -1,40 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2014, Luke Bonham - ---]] - -local newtimer = require("lain.helpers").newtimer -local wibox = require("wibox") - -local io = io -local setmetatable = setmetatable - --- Basic template for custom widgets --- lain.widgets.base -local base = {} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 5 - local cmd = args.cmd or "" - local settings = args.settings or function() end - - base.widget = wibox.widget.textbox('') - - function base.update() - local f = assert(io.popen(cmd)) - output = f:read("*all") - f:close() - widget = base.widget - settings() - end - - newtimer(cmd, timeout, base.update) - - return setmetatable(base, { __index = base.widget }) -end - -return setmetatable(base, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/bat.lua b/awesome/.config/awesome/lain/widgets/bat.lua deleted file mode 100644 index 485fd57..0000000 --- a/awesome/.config/awesome/lain/widgets/bat.lua +++ /dev/null @@ -1,149 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local newtimer = require("lain.helpers").newtimer -local first_line = require("lain.helpers").first_line - -local naughty = require("naughty") -local wibox = require("wibox") - -local math = { floor = math.floor } -local string = { format = string.format } -local tonumber = tonumber - -local setmetatable = setmetatable - --- Battery infos --- lain.widgets.bat -local bat = {} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 30 - local battery = args.battery or "BAT0" - local notify = args.notify or "on" - local settings = args.settings or function() end - - bat.widget = wibox.widget.textbox('') - - bat_notification_low_preset = { - title = "Battery low", - text = "Plug the cable!", - timeout = 15, - fg = "#202020", - bg = "#CDCDCD" - } - - bat_notification_critical_preset = { - title = "Battery exhausted", - text = "Shutdown imminent", - timeout = 15, - fg = "#000000", - bg = "#FFFFFF" - } - - function update() - bat_now = { - status = "Not present", - perc = "N/A", - time = "N/A", - watt = "N/A" - } - - local bstr = "/sys/class/power_supply/" .. battery - - local present = first_line(bstr .. "/present") - - if present == "1" - then - local rate = first_line(bstr .. "/power_now") or - first_line(bstr .. "/current_now") - - local ratev = first_line(bstr .. "/voltage_now") - - local rem = first_line(bstr .. "/energy_now") or - first_line(bstr .. "/charge_now") - - local tot = first_line(bstr .. "/energy_full") or - first_line(bstr .. "/charge_full") - - bat_now.status = first_line(bstr .. "/status") or "N/A" - - rate = tonumber(rate) or 1 - ratev = tonumber(ratev) - rem = tonumber(rem) - tot = tonumber(tot) - - local time_rat = 0 - if bat_now.status == "Charging" - then - time_rat = (tot - rem) / rate - elseif bat_now.status == "Discharging" - then - time_rat = rem / rate - end - - local hrs = math.floor(time_rat) - if hrs < 0 then hrs = 0 elseif hrs > 23 then hrs = 23 end - - local min = math.floor((time_rat - hrs) * 60) - if min < 0 then min = 0 elseif min > 59 then min = 59 end - - bat_now.time = string.format("%02d:%02d", hrs, min) - - bat_now.perc = first_line(bstr .. "/capacity") - - if not bat_now.perc then - local perc = (rem / tot) * 100 - if perc <= 100 then - bat_now.perc = string.format("%d", perc) - elseif perc > 100 then - bat_now.perc = "100" - elseif perc < 0 then - bat_now.perc = "0" - end - end - - if rate ~= nil and ratev ~= nil then - bat_now.watt = string.format("%.2fW", (rate * ratev) / 1e12) - else - bat_now.watt = "N/A" - end - - end - - widget = bat.widget - settings() - - -- notifications for low and critical states - bat_now.perc = tonumber(bat_now.perc) - if bat_now.status == "Discharging" and notify == "on" and bat_now.perc ~= nil - then - if bat_now.perc <= 5 - then - bat.id = naughty.notify({ - preset = bat_notification_critical_preset, - replaces_id = bat.id - }).id - elseif bat_now.perc <= 15 - then - bat.id = naughty.notify({ - preset = bat_notification_low_preset, - replaces_id = bat.id - }).id - end - end - end - - newtimer("bat", timeout, update) - - return bat.widget -end - -return setmetatable(bat, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/borderbox.lua b/awesome/.config/awesome/lain/widgets/borderbox.lua deleted file mode 100644 index c251ea8..0000000 --- a/awesome/.config/awesome/lain/widgets/borderbox.lua +++ /dev/null @@ -1,61 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local wibox = require("awful.wibox") -local setmetatable = setmetatable - --- Creates a thin wibox at a position relative to another wibox --- lain.widgets.borderbox -local borderbox = {} - -local function worker(relbox, s, args) - local where = args.position or 'top' - local color = args.color or '#FFFFFF' - local size = args.size or 1 - local box = nil - local wiboxarg = { - position = nil, - bg = color - } - - if where == 'top' - then - wiboxarg.width = relbox.width - wiboxarg.height = size - box = wibox(wiboxarg) - box.x = relbox.x - box.y = relbox.y - size - elseif where == 'bottom' - then - wiboxarg.width = relbox.width - wiboxarg.height = size - box = wibox(wiboxarg) - box.x = relbox.x - box.y = relbox.y + relbox.height - elseif where == 'left' - then - wiboxarg.width = size - wiboxarg.height = relbox.height - box = wibox(wiboxarg) - box.x = relbox.x - size - box.y = relbox.y - elseif where == 'right' - then - wiboxarg.width = size - wiboxarg.height = relbox.height - box = wibox(wiboxarg) - box.x = relbox.x + relbox.width - box.y = relbox.y - end - - box.screen = s - return box -end - -return setmetatable(borderbox, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/calendar.lua b/awesome/.config/awesome/lain/widgets/calendar.lua deleted file mode 100644 index c9e265a..0000000 --- a/awesome/.config/awesome/lain/widgets/calendar.lua +++ /dev/null @@ -1,125 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - ---]] - -local icons_dir = require("lain.helpers").icons_dir - -local awful = require("awful") -local beautiful = require("beautiful") -local naughty = require("naughty") - -local io = io -local os = { date = os.date } -local tonumber = tonumber - -local setmetatable = setmetatable - --- Calendar notification --- lain.widgets.calendar -local calendar = {} -local cal_notification = nil - -function calendar:hide() - if cal_notification ~= nil then - naughty.destroy(cal_notification) - cal_notification = nil - end -end - -function calendar:show(t_out, inc_offset) - calendar:hide() - - local offs = inc_offset or 0 - local tims = t_out or 0 - local f, c_text - local today = tonumber(os.date('%d')) - local init_t = '/usr/bin/cal | sed -r -e "s/(^| )( ' - - if offs == 0 - then -- current month showing, today highlighted - if today >= 10 - then - init_t = '/usr/bin/cal | sed -r -e "s/(^| )(' - end - - calendar.offset = 0 - calendar.notify_icon = calendar.icons .. today .. ".png" - - -- bg and fg inverted to highlight today - f = io.popen( init_t .. today .. - ')($| )/\\1<b><span foreground=\\"' - .. calendar.bg .. - '\\" background=\\"' - .. calendar.fg .. - '\\">\\2<\\/span><\\/b>\\3/"' ) - - else -- no current month showing, no day to highlight - local month = tonumber(os.date('%m')) - local year = tonumber(os.date('%Y')) - - calendar.offset = calendar.offset + offs - month = month + calendar.offset - - if month > 12 then - month = month % 12 - year = year + 1 - if month <= 0 then - month = 12 - end - elseif month < 1 then - month = month + 12 - year = year - 1 - if month <= 0 then - month = 1 - end - end - - calendar.notify_icon = nil - - f = io.popen('/usr/bin/cal ' .. month .. ' ' .. year) - end - - c_text = "<tt><span font='" .. calendar.font .. " " - .. calendar.font_size .. "'><b>" - .. f:read() .. "</b>\n\n" - .. f:read() .. "\n" - .. f:read("*all"):gsub("\n*$", "") - .. "</span></tt>" - f:close() - - cal_notification = naughty.notify({ - text = c_text, - icon = calendar.notify_icon, - position = calendar.position, - fg = calendar.fg, - bg = calendar.bg, - timeout = tims - }) -end - -function calendar:attach(widget, args) - local args = args or {} - calendar.icons = args.icons or icons_dir .. "cal/white/" - calendar.font = args.font or beautiful.font:sub(beautiful.font:find(""), - beautiful.font:find(" ")) - calendar.font_size = tonumber(args.font_size) or 11 - calendar.fg = args.fg or beautiful.fg_normal or "#FFFFFF" - calendar.bg = args.bg or beautiful.bg_normal or "#FFFFFF" - calendar.position = args.position or "top_right" - - calendar.offset = 0 - calendar.notify_icon = nil - - widget:connect_signal("mouse::enter", function () calendar:show() end) - widget:connect_signal("mouse::leave", function () calendar:hide() end) - widget:buttons(awful.util.table.join( awful.button({ }, 1, function () - calendar:show(0, -1) end), - awful.button({ }, 3, function () - calendar:show(0, 1) end) )) -end - -return setmetatable(calendar, { __call = function(_, ...) return create(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/contrib/ccurr.lua b/awesome/.config/awesome/lain/widgets/contrib/ccurr.lua deleted file mode 100644 index f696a35..0000000 --- a/awesome/.config/awesome/lain/widgets/contrib/ccurr.lua +++ /dev/null @@ -1,82 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2014, Aaron Lebo - ---]] - -local newtimer = require("lain.helpers").newtimer - -local wibox = require("wibox") -local json = require("dkjson") - -local string = { format = string.format } -local tonumber = tonumber - --- Crypto currencies widget --- lain.widgets.contrib.ccurr -local ccurr = {} - --- Currently gets --- * BTC/USD --- * DOGE/USD --- using Coinbase and Cryptsy APIs. - --- requires http://dkolf.de/src/dkjson-lua.fsl/home --- based upon http://awesome.naquadah.org/wiki/Bitcoin_Price_Widget - -local function get(url) - local f = io.popen('curl -m 5 -s "' .. url .. '"') - if not f then - return 0 - else - local s = f:read("*all") - f:close() - return s - end -end - -local function parse(j) - local obj, pos, err = json.decode(j, 1, nil) - if err then - return nil - else - return obj - end -end - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 600 - local btc_url = args.btc_url or "https://coinbase.com/api/v1/prices/buy" - local doge_url = args.doge_url or "http://pubapi.cryptsy.com/api.php?method=singlemarketdata&marketid=132" - local settings = args.settings or function() end - - ccurr.widget = wibox.widget.textbox('') - - local function update() - price_now = { - btc = "N/A", - doge = "N/A" - } - - btc = parse(get(btc_url)) - doge = parse(get(doge_url)) - - if btc and doge then - price_now.btc = tonumber(btc["subtotal"]["amount"]) - price_now.doge = tonumber(doge["return"]["markets"]["DOGE"]["lasttradeprice"]) - price_now.doge = string.format("%.4f", price_now.btc * price_now.doge) - end - - widget = ccurr.widget - settings() - end - - newtimer("ccurr", timeout, update) - - return ccurr.widget -end - -return setmetatable(ccurr, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/contrib/init.lua b/awesome/.config/awesome/lain/widgets/contrib/init.lua deleted file mode 100644 index 9a9fa63..0000000 --- a/awesome/.config/awesome/lain/widgets/contrib/init.lua +++ /dev/null @@ -1,20 +0,0 @@ - ---[[ - - Lain - Layouts, widgets and utilities for Awesome WM - - Users contributed widgets section - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local wrequire = require("lain.helpers").wrequire -local setmetatable = setmetatable - -local widgets = { _NAME = "lain.widgets.contrib" } - -return setmetatable(widgets, { __index = wrequire }) diff --git a/awesome/.config/awesome/lain/widgets/contrib/task.lua b/awesome/.config/awesome/lain/widgets/contrib/task.lua deleted file mode 100644 index a6c9f31..0000000 --- a/awesome/.config/awesome/lain/widgets/contrib/task.lua +++ /dev/null @@ -1,133 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2013, Jan Xie - ---]] - -local icons_dir = require("lain.helpers").icons_dir - -local awful = require("awful") -local beautiful = require("beautiful") -local naughty = require("naughty") - -local io = io -local string = { len = string.len } -local tonumber = tonumber - -local setmetatable = setmetatable - --- Taskwarrior notification --- lain.widgets.task -local task = {} - -local task_notification = nil - -function task:hide() - if task_notification ~= nil then - naughty.destroy(task_notification) - task_notification = nil - end -end - -function task:show() - task:hide() - - local f, c_text - - f = io.popen('task') - c_text = "<span font='" - .. task.font .. " " - .. task.font_size .. "'>" - .. f:read("*all"):gsub("\n*$", "") - .. "</span>" - f:close() - - task_notification = naughty.notify({ title = "[task next]", - text = c_text, - icon = task.notify_icon, - position = task.position, - fg = task.fg, - bg = task.bg, - timeout = task.timeout }) -end - -function task:prompt_add() - awful.prompt.run({ prompt = "Add task: " }, - mypromptbox[mouse.screen].widget, - function (...) - local f = io.popen("task add " .. ...) - c_text = "\n<span font='" - .. task.font .. " " - .. task.font_size .. "'>" - .. f:read("*all") - .. "</span>" - f:close() - - naughty.notify({ - text = c_text, - icon = task.notify_icon, - position = task.position, - fg = task.fg, - bg = task.bg, - timeout = task.timeout - }) - end, - nil, - awful.util.getdir("cache") .. "/history_task_add") -end - -function task:prompt_search() - awful.prompt.run({ prompt = "Search task: " }, - mypromptbox[mouse.screen].widget, - function (...) - local f = io.popen("task " .. ...) - c_text = f:read("*all"):gsub(" \n*$", "") - f:close() - - if string.len(c_text) == 0 - then - c_text = "No results found." - else - c_text = "<span font='" - .. task.font .. " " - .. task.font_size .. "'>" - .. c_text - .. "</span>" - end - - naughty.notify({ - title = "[task next " .. ... .. "]", - text = c_text, - icon = task.notify_icon, - position = task.position, - fg = task.fg, - bg = task.bg, - timeout = task.timeout - }) - end, - nil, - awful.util.getdir("cache") .. "/history_task") -end - -function task:attach(widget, args) - local args = args or {} - - task.font_size = tonumber(args.font_size) or 12 - task.font = beautiful.font:sub(beautiful.font:find(""), - beautiful.font:find(" ")) - task.fg = args.fg or beautiful.fg_normal or "#FFFFFF" - task.bg = args.bg or beautiful.bg_normal or "#FFFFFF" - task.position = args.position or "top_right" - task.timeout = args.timeout or 7 - - task.notify_icon = icons_dir .. "/taskwarrior/task.png" - task.notify_icon_small = icons_dir .. "/taskwarrior/tasksmall.png" - - widget:connect_signal("mouse::enter", function () task:show() end) - widget:connect_signal("mouse::leave", function () task:hide() end) -end - -return setmetatable(task, { __call = function(_, ...) return create(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/contrib/tpbat/init.lua b/awesome/.config/awesome/lain/widgets/contrib/tpbat/init.lua deleted file mode 100644 index 72d6453..0000000 --- a/awesome/.config/awesome/lain/widgets/contrib/tpbat/init.lua +++ /dev/null @@ -1,166 +0,0 @@ - ---[[ - - tpbat.lua - Battery status widget for ThinkPad laptops that use SMAPI - lain.widgets.contrib.tpbat - - More on tp_smapi: http://www.thinkwiki.org/wiki/Tp_smapi - - Licensed under GNU General Public License v2 - * (c) 2013, Conor Heine - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local debug = { getinfo = debug.getinfo } -local newtimer = require("lain.helpers").newtimer -local first_line = require("lain.helpers").first_line -local beautiful = require("beautiful") -local naughty = require("naughty") -local wibox = require("wibox") - -local string = { format = string.format } -local math = { floor = math.floor } -local tostring = tostring -local setmetatable = setmetatable - -package.path = debug.getinfo(1,"S").source:match[[^@?(.*[\/])[^\/]-$]] .. "?.lua;" .. package.path -local smapi = require("smapi") - --- ThinkPad SMAPI-enabled battery info widget --- lain.widgets.contrib.tpbat -local tpbat = { } -local tpbat_notification = nil - -function tpbat:hide() - if tpbat_notification ~= nil - then - naughty.destroy(tpbat_notification) - tpbat_notification = nil - end -end - -function tpbat:show(t_out) - tpbat:hide() - - local bat = self.bat - local t_out = t_out or 0 - - if bat == nil or not bat:installed() then return end - - local mfgr = bat:get('manufacturer') or "no_mfgr" - local model = bat:get('model') or "no_model" - local chem = bat:get('chemistry') or "no_chem" - local status = bat:get('state') or "nil" - local time = bat:remaining_time() - local msg = "\t" - - if status ~= "idle" and status ~= "nil" - then - if time == "N/A" - then - msg = "...Calculating time remaining..." - else - msg = time .. (status == "charging" and " until charged" or " remaining") - end - else - msg = "On AC Power" - end - - local str = string.format("%s : %s %s (%s)\n", bat.name, mfgr, model, chem) - .. string.format("\n%s \t\t\t %s", status:upper(), msg) - - tpbat_notification = naughty.notify({ - preset = { fg = beautiful.fg_normal }, - text = str, - timeout = t_out - }) -end - -function tpbat.register(args) - local args = args or {} - local timeout = args.timeout or 30 - local battery = args.battery or "BAT0" - local settings = args.settings or function() end - - tpbat.bat = smapi:battery(battery) -- Create a new battery - local bat = tpbat.bat - - tpbat.widget = wibox.widget.textbox('') - - bat_notification_low_preset = { - title = "Battery low", - text = "Plug the cable!", - timeout = 15, - fg = "#202020", - bg = "#CDCDCD" - } - - bat_notification_critical_preset = { - title = "Battery exhausted", - text = "Shutdown imminent", - timeout = 15, - fg = "#000000", - bg = "#FFFFFF" - } - - if bat:get('state') == nil - then - local n = naughty.notify({ - preset = bat_notification_low_preset, - title = "SMAPI Battery Warning: Unable to read battery state!", - text = "This widget is intended for ThinkPads. Is tp_smapi installed? Check your configs & paths." - }) - end - - function update() - bat_now = { - status = "Not present", - perc = "N/A", - time = "N/A", - watt = "N/A" - } - - if bat:installed() - then - bat_now.status = bat:status() or "N/A" - bat_now.perc = bat:percent() - bat_now.time = bat:remaining_time() - -- bat_now.watt = string.format("%.2fW", (VOLTS * AMPS) / 1e12) - - -- notifications for low and critical states (when discharging) - if bat_now.status == "discharging" - then - if bat_now.perc <= 5 - then - tpbat.id = naughty.notify({ - preset = bat_notification_critical_preset, - replaces_id = tpbat.id - }).id - elseif bat_now.perc <= 15 - then - tpbat.id = naughty.notify({ - preset = bat_notification_low_preset, - replaces_id = tpbat.id - }).id - end - end - - bat_now.perc = tostring(bat_now.perc) - end - - widget = tpbat.widget - settings() - end - - newtimer("tpbat", timeout, update) - - widget:connect_signal('mouse::enter', function () tpbat:show() end) - widget:connect_signal('mouse::leave', function () tpbat:hide() end) - - return tpbat.widget -end - -return setmetatable(tpbat, { __call = function(_, ...) return tpbat.register(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/contrib/tpbat/smapi.lua b/awesome/.config/awesome/lain/widgets/contrib/tpbat/smapi.lua deleted file mode 100644 index 862d4cd..0000000 --- a/awesome/.config/awesome/lain/widgets/contrib/tpbat/smapi.lua +++ /dev/null @@ -1,102 +0,0 @@ - ---[[ - - smapi.lua - Interface with thinkpad battery information - - Licensed under GNU General Public License v2 - * (c) 2013, Conor Heine - ---]] - -local first_line = require("lain.helpers").first_line - -local string = { format = string.format } -local tonumber = tonumber -local setmetatable = setmetatable - -local smapi = {} - -local apipath = "/sys/devices/platform/smapi" - --- Most are readable values, but some can be written to (not implemented, yet?) -local readable = { - barcoding = true, - charging_max_current = true, - charging_max_voltage = true, - chemistry = true, - current_avg = true, - current_now = true, - cycle_count = true, - design_capacity = true, - design_voltage = true, - dump = true, - first_use_date = true, - force_discharge = false, - group0_voltage = true, - group1_voltage = true, - group2_voltage = true, - group3_voltage = true, - inhibit_charge_minutes = false, - installed = true, - last_full_capacity = true, - manufacture_date = true, - manufacturer = true, - model = true, - power_avg = true, - power_now = true, - remaining_capacity = true, - remaining_charging_time = true, - remaining_percent = true, - remaining_percent_error = true, - remaining_running_time = true, - remaining_running_time_now = true, - serial = true, - start_charge_thresh = false, - state = true, - stop_charge_thresh = false, - temperature = true, - voltage = true, -} - -function smapi:battery(name) - local bat = {} - - bat.name = name - bat.path = apipath .. "/" .. name - - function bat:get(item) - return self.path ~= nil and readable[item] and first_line(self.path .. "/" .. item) or nil - end - - function bat:installed() - return self:get("installed") == "1" - end - - function bat:status() - return self:get('state') - end - - -- Remaining time can either be time until battery dies or time until charging completes - function bat:remaining_time() - local time_val = bat_now.status == 'discharging' and 'remaining_running_time' or 'remaining_charging_time' - local mins_left = self:get(time_val) - - if mins_left:find("^%d+") == nil - then - return "N/A" - end - - local hrs = mins_left / 60 - local min = mins_left % 60 - return string.format("%02d:%02d", hrs, min) - end - - function bat:percent() - return tonumber(self:get("remaining_percent")) - end - - return setmetatable(bat, {__metatable = false, __newindex = false}) -end - -return smapi diff --git a/awesome/.config/awesome/lain/widgets/cpu.lua b/awesome/.config/awesome/lain/widgets/cpu.lua deleted file mode 100644 index 0b21edc..0000000 --- a/awesome/.config/awesome/lain/widgets/cpu.lua +++ /dev/null @@ -1,77 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local first_line = require("lain.helpers").first_line -local newtimer = require("lain.helpers").newtimer - -local wibox = require("wibox") - -local math = { ceil = math.ceil } -local string = { format = string.format, - gmatch = string.gmatch } -local tostring = tostring - -local setmetatable = setmetatable - --- CPU usage --- lain.widgets.cpu -local cpu = { - last_total = 0, - last_active = 0 -} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 5 - local settings = args.settings or function() end - - cpu.widget = wibox.widget.textbox('') - - function update() - -- Read the amount of time the CPUs have spent performing - -- different kinds of work. Read the first line of /proc/stat - -- which is the sum of all CPUs. - local times = first_line("/proc/stat") - local at = 1 - local idle = 0 - local total = 0 - for field in string.gmatch(times, "[%s]+([^%s]+)") - do - -- 3 = idle, 4 = ioWait. Essentially, the CPUs have done - -- nothing during these times. - if at == 3 or at == 4 - then - idle = idle + field - end - total = total + field - at = at + 1 - end - local active = total - idle - - -- Read current data and calculate relative values. - local dactive = active - cpu.last_active - local dtotal = total - cpu.last_total - - cpu_now = {} - cpu_now.usage = tostring(math.ceil((dactive / dtotal) * 100)) - - widget = cpu.widget - settings() - - -- Save current data for the next run. - cpu.last_active = active - cpu.last_total = total - end - - newtimer("cpu", timeout, update) - - return cpu.widget -end - -return setmetatable(cpu, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/fs.lua b/awesome/.config/awesome/lain/widgets/fs.lua deleted file mode 100644 index 7406e05..0000000 --- a/awesome/.config/awesome/lain/widgets/fs.lua +++ /dev/null @@ -1,120 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010, Adrian C. <anrxc@sysphere.org> - * (c) 2009, Lucas de Vries <lucas@glacicle.com> - ---]] - -local helpers = require("lain.helpers") - -local beautiful = require("beautiful") -local wibox = require("wibox") -local naughty = require("naughty") - -local io = io -local pairs = pairs -local string = { match = string.match, - format = string.format } -local tonumber = tonumber - -local setmetatable = setmetatable - --- File system disk space usage --- lain.widgets.fs -local fs = {} - -local notification = nil -fs_notification_preset = { fg = beautiful.fg_normal } - -function fs:hide() - if notification ~= nil then - naughty.destroy(notification) - notification = nil - end -end - -function fs:show(t_out) - fs:hide() - - local f = io.popen(helpers.scripts_dir .. "dfs") - ws = f:read("*all"):gsub("\n*$", "") - f:close() - - notification = naughty.notify({ - preset = fs_notification_preset, - text = ws, - timeout = t_out - }) -end - --- Units definitions -local unit = { ["mb"] = 1024, ["gb"] = 1024^2 } - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 600 - local partition = args.partition or "/" - local settings = args.settings or function() end - - fs.widget = wibox.widget.textbox('') - - helpers.set_map("fs", false) - - function update() - fs_info = {} - fs_now = {} - - local f = io.popen("LC_ALL=C df -kP") - - for line in f:lines() do -- Match: (size) (used)(avail)(use%) (mount) - local s = string.match(line, "^.-[%s]([%d]+)") - local u,a,p = string.match(line, "([%d]+)[%D]+([%d]+)[%D]+([%d]+)%%") - local m = string.match(line, "%%[%s]([%p%w]+)") - - if u and m then -- Handle 1st line and broken regexp - fs_info[m .. " size_mb"] = string.format("%.1f", tonumber(s) / unit["mb"]) - fs_info[m .. " size_gb"] = string.format("%.1f", tonumber(s) / unit["gb"]) - fs_info[m .. " used_p"] = tonumber(p) - fs_info[m .. " avail_p"] = 100 - tonumber(p) - end - end - - f:close() - - -- chosen partition easy stuff - -- you can however check whatever partition else - fs_now.used = tonumber(fs_info[partition .. " used_p"]) or 0 - fs_now.available = tonumber(fs_info[partition .. " avail_p"]) or 0 - fs_now.size_mb = tonumber(fs_info[partition .. " size_mb"]) or 0 - fs_now.size_gb = tonumber(fs_info[partition .. " size_gb"]) or 0 - - widget = fs.widget - settings() - - if fs_now.used >= 99 and not helpers.get_map("fs") - then - naughty.notify({ - title = "warning", - text = partition .. " ran out!\nmake some room", - timeout = 8, - fg = "#000000", - bg = "#FFFFFF" - }) - helpers.set_map("fs", true) - else - helpers.set_map("fs", false) - end - end - - helpers.newtimer(partition, timeout, update) - - widget:connect_signal('mouse::enter', function () fs:show(0) end) - widget:connect_signal('mouse::leave', function () fs:hide() end) - - return setmetatable(fs, { __index = fs.widget }) -end - -return setmetatable(fs, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/imap.lua b/awesome/.config/awesome/lain/widgets/imap.lua deleted file mode 100644 index 39518bd..0000000 --- a/awesome/.config/awesome/lain/widgets/imap.lua +++ /dev/null @@ -1,87 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - ---]] - -local helpers = require("lain.helpers") - -local naughty = require("naughty") -local wibox = require("wibox") - -local io = { popen = io.popen } -local string = { format = string.format, - gsub = string.gsub } -local tonumber = tonumber - -local setmetatable = setmetatable - --- Mail IMAP check --- lain.widgets.imap -local imap = {} - -local function worker(args) - local args = args or {} - - local server = args.server - local mail = args.mail - local password = args.password - - local port = args.port or 993 - local timeout = args.timeout or 60 - local is_plain = args.is_plain or false - local settings = args.settings or function() end - - local head_command = "curl --connect-timeout 1 -fsm 3" - local request = "-X 'SEARCH (UNSEEN)'" - - helpers.set_map(mail, 0) - - if not is_plain - then - local f = io.popen(password) - password = f:read("*all"):gsub("\n", "") - f:close() - end - - imap.widget = wibox.widget.textbox('') - - function update() - mail_notification_preset = { - icon = helpers.icons_dir .. "mail.png", - position = "top_left" - } - - curl = string.format("%s --url imaps://%s:%s/INBOX -u %s:%s %s -k", - head_command, server, port, mail, password, request) - - f = io.popen(curl) - ws = f:read("*all") - f:close() - - _, mailcount = string.gsub(ws, "%d+", "") - _ = nil - - widget = imap.widget - settings() - - if mailcount > helpers.get_map(mail) and mailcount >= 1 - then - if mailcount == 1 then - nt = mail .. " has one new message" - else - nt = mail .. " has <b>" .. mailcount .. "</b> new messages" - end - naughty.notify({ preset = mail_notification_preset, text = nt }) - end - - helpers.set_map(mail, mailcount) - end - - helpers.newtimer(mail, timeout, update, true) - return imap.widget -end - -return setmetatable(imap, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/init.lua b/awesome/.config/awesome/lain/widgets/init.lua deleted file mode 100644 index 0e863ba..0000000 --- a/awesome/.config/awesome/lain/widgets/init.lua +++ /dev/null @@ -1,20 +0,0 @@ - ---[[ - - Lain - Layouts, widgets and utilities for Awesome WM - - Widgets section - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local wrequire = require("lain.helpers").wrequire -local setmetatable = setmetatable - -local widgets = { _NAME = "lain.widgets" } - -return setmetatable(widgets, { __index = wrequire }) diff --git a/awesome/.config/awesome/lain/widgets/maildir.lua b/awesome/.config/awesome/lain/widgets/maildir.lua deleted file mode 100644 index d460881..0000000 --- a/awesome/.config/awesome/lain/widgets/maildir.lua +++ /dev/null @@ -1,95 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local newtimer = require("lain.helpers").newtimer - -local wibox = require("wibox") - -local io = io -local os = { getenv = os.getenv } -local pairs = pairs -local string = { len = string.len, - match = string.match } -local table = { sort = table.sort } - -local setmetatable = setmetatable - --- Maildir check --- lain.widgets.maildir -local maildir = {} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 60 - local mailpath = args.mailpath or os.getenv("HOME") .. "/Mail" - local ignore_boxes = args.ignore_boxes or {} - local settings = args.settings or function() end - - maildir.widget = wibox.widget.textbox('') - - function update() - -- Find pathes to mailboxes. - local p = io.popen("find " .. mailpath .. - " -mindepth 1 -maxdepth 1 -type d" .. - " -not -name .git") - local boxes = {} - repeat - line = p:read("*l") - if line ~= nil - then - -- Find all files in the "new" subdirectory. For each - -- file, print a single character (no newline). Don't - -- match files that begin with a dot. - -- Afterwards the length of this string is the number of - -- new mails in that box. - local np = io.popen("find " .. line .. - "/new -mindepth 1 -type f " .. - "-not -name '.*' -printf a") - local mailstring = np:read("*all") - - -- Strip off leading mailpath. - local box = string.match(line, mailpath .. "/*([^/]+)") - local nummails = string.len(mailstring) - if nummails > 0 - then - boxes[box] = nummails - end - end - until line == nil - - table.sort(boxes) - - newmail = "no mail" - - local count = 0 - for box, number in pairs(boxes) - do - count = count + 1 - -- Add this box only if it's not to be ignored. - if not util.element_in_table(box, ignore_boxes) - then - if newmail == "" - then - newmail = box .. "(" .. number .. ")" - else - newmail = newmail .. ", " .. - box .. "(" .. number .. ")" - end - end - end - - widget = maildir.widget - settings() - end - - newtimer(mailpath, timeout, update, true) - return maildir.widget -end - -return setmetatable(maildir, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/mem.lua b/awesome/.config/awesome/lain/widgets/mem.lua deleted file mode 100644 index 986fa76..0000000 --- a/awesome/.config/awesome/lain/widgets/mem.lua +++ /dev/null @@ -1,61 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local newtimer = require("lain.helpers").newtimer - -local wibox = require("wibox") - -local io = { lines = io.lines } -local math = { floor = math.floor } -local string = { format = string.format, - gmatch = string.gmatch, - len = string.len } - -local setmetatable = setmetatable - --- Memory usage (ignoring caches) --- lain.widgets.mem -local mem = {} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 3 - local settings = args.settings or function() end - - mem.widget = wibox.widget.textbox('') - - function update() - mem_now = {} - for line in io.lines("/proc/meminfo") - do - for k, v in string.gmatch(line, "([%a]+):[%s]+([%d]+).+") - do - if k == "MemTotal" then mem_now.total = math.floor(v / 1024) - elseif k == "MemFree" then mem_now.free = math.floor(v / 1024) - elseif k == "Buffers" then mem_now.buf = math.floor(v / 1024) - elseif k == "Cached" then mem_now.cache = math.floor(v / 1024) - elseif k == "SwapTotal" then mem_now.swap = math.floor(v / 1024) - elseif k == "SwapFree" then mem_now.swapf = math.floor(v / 1024) - end - end - end - - mem_now.used = mem_now.total - (mem_now.free + mem_now.buf + mem_now.cache) - mem_now.swapused = mem_now.swap - mem_now.swapf - - widget = mem.widget - settings() - end - - newtimer("mem", timeout, update) - - return mem.widget -end - -return setmetatable(mem, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/mpd.lua b/awesome/.config/awesome/lain/widgets/mpd.lua deleted file mode 100644 index 600dbac..0000000 --- a/awesome/.config/awesome/lain/widgets/mpd.lua +++ /dev/null @@ -1,110 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010, Adrian C. <anrxc@sysphere.org> - ---]] - -local helpers = require("lain.helpers") - -local escape_f = require("awful.util").escape -local naughty = require("naughty") -local wibox = require("wibox") - -local io = { popen = io.popen } -local os = { execute = os.execute, - getenv = os.getenv } -local string = { format = string.format, - gmatch = string.gmatch } - -local setmetatable = setmetatable - --- MPD infos --- lain.widgets.mpd -local mpd = {} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 2 - local password = args.password or "" - local host = args.host or "127.0.0.1" - local port = args.port or "6600" - local music_dir = args.music_dir or os.getenv("HOME") .. "/Music" - local cover_size = args.cover_size or 100 - local default_art = args.default_art or "" - local settings = args.settings or function() end - - local mpdcover = helpers.scripts_dir .. "mpdcover" - local mpdh = "telnet://" .. host .. ":" .. port - local echo = "echo 'password " .. password .. "\nstatus\ncurrentsong\nclose'" - - mpd.widget = wibox.widget.textbox('') - - mpd_notification_preset = { - -- title = "now playing\n░░░░▒▒▒▒▓▓▓▓▓▓████████▓▓▓▓▓▓▒▒▒▒░░░░", - title = "now playing", - timeout = 6 - } - - helpers.set_map("current mpd track", nil) - - function mpd.update() - mpd_now = { - state = "N/A", - file = "N/A", - artist = "N/A", - title = "N/A", - album = "N/A", - date = "N/A" - } - - local f = io.popen(echo .. " | curl --connect-timeout 1 -fsm 3 " .. mpdh) - - for line in f:lines() do - for k, v in string.gmatch(line, "([%w]+):[%s](.*)$") do - if k == "state" then mpd_now.state = v - elseif k == "file" then mpd_now.file = v - elseif k == "Artist" then mpd_now.artist = escape_f(v) - elseif k == "Title" then mpd_now.title = escape_f(v) - elseif k == "Album" then mpd_now.album = escape_f(v) - elseif k == "Date" then mpd_now.date = escape_f(v) - end - end - end - - f:close() - - mpd_notification_preset.text = string.format("%s (%s) - %s\n%s", mpd_now.artist, - mpd_now.album, mpd_now.date, mpd_now.title) - widget = mpd.widget - settings() - - if mpd_now.state == "play" - then - if mpd_now.title ~= helpers.get_map("current mpd track") - then - helpers.set_map("current mpd track", mpd_now.title) - - os.execute(string.format("%s %q %q %d %q", mpdcover, music_dir, - mpd_now.file, cover_size, default_art)) - - mpd.id = naughty.notify({ - preset = mpd_notification_preset, - icon = "/tmp/mpdcover.png", - replaces_id = mpd.id - }).id - end - elseif mpd_now.state ~= "pause" - then - helpers.set_map("current mpd track", nil) - end - end - - helpers.newtimer("mpd", timeout, mpd.update) - - return setmetatable(mpd, { __index = mpd.widget }) -end - -return setmetatable(mpd, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/net.lua b/awesome/.config/awesome/lain/widgets/net.lua deleted file mode 100644 index af97201..0000000 --- a/awesome/.config/awesome/lain/widgets/net.lua +++ /dev/null @@ -1,102 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local helpers = require("lain.helpers") - -local notify_fg = require("beautiful").fg_focus -local naughty = require("naughty") -local wibox = require("wibox") - -local io = io -local tostring = tostring -local string = { format = string.format, - gsub = string.gsub } - -local setmetatable = setmetatable - --- Network infos --- lain.widgets.net -local net = { - last_t = 0, - last_r = 0 -} - -function net.get_device() - f = io.popen("ip link show | cut -d' ' -f2,9") - ws = f:read("*all") - f:close() - ws = ws:match("%w+: UP") - if ws ~= nil then - return ws:gsub(": UP", "") - else - return "network off" - end -end - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 2 - local iface = args.iface or net.get_device() - local units = args.units or 1024 --kb - local settings = args.settings or function() end - - net.widget = wibox.widget.textbox('') - - helpers.set_map(iface, true) - - function update() - net_now = {} - - if iface == "" then iface = net.get_device() end - - net_now.carrier = helpers.first_line('/sys/class/net/' .. iface .. - '/carrier') or "0" - net_now.state = helpers.first_line('/sys/class/net/' .. iface .. - '/operstate') or "down" - local now_t = helpers.first_line('/sys/class/net/' .. iface .. - '/statistics/tx_bytes') or 0 - local now_r = helpers.first_line('/sys/class/net/' .. iface .. - '/statistics/rx_bytes') or 0 - - net_now.sent = tostring((now_t - net.last_t) / timeout / units) - net_now.sent = string.gsub(string.format('%.1f', net_now.sent), ",", ".") - - net_now.received = tostring((now_r - net.last_r) / timeout / units) - net_now.received = string.gsub(string.format('%.1f', net_now.received), ",", ".") - - widget = net.widget - settings() - - net.last_t = now_t - net.last_r = now_r - - if net_now.carrier ~= "1" - then - if helpers.get_map(iface) - then - naughty.notify({ - title = iface, - text = "no carrier", - timeout = 7, - position = "top_left", - icon = helpers.icons_dir .. "no_net.png", - fg = notify_fg or "#FFFFFF" - }) - helpers.set_map(iface, false) - end - else - helpers.set_map(iface, true) - end - end - - helpers.newtimer(iface, timeout, update) - return net.widget -end - -return setmetatable(net, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/sysload.lua b/awesome/.config/awesome/lain/widgets/sysload.lua deleted file mode 100644 index 2abac33..0000000 --- a/awesome/.config/awesome/lain/widgets/sysload.lua +++ /dev/null @@ -1,46 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - * (c) 2010-2012, Peter Hofmann - ---]] - -local newtimer = require("lain.helpers").newtimer - -local wibox = require("wibox") - -local io = { open = io.open } -local string = { format = string.format, - match = string.match } - -local setmetatable = setmetatable - --- System load --- lain.widgets.sysload -local sysload = {} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 5 - local settings = args.settings or function() end - - sysload.widget = wibox.widget.textbox('') - - function update() - local f = io.open("/proc/loadavg") - local ret = f:read("*all") - f:close() - - load_1, load_5, load_15 = string.match(ret, "([^%s]+) ([^%s]+) ([^%s]+)") - - widget = sysload.widget - settings() - end - - newtimer("sysload", timeout, update) - return sysload.widget -end - -return setmetatable(sysload, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/temp.lua b/awesome/.config/awesome/lain/widgets/temp.lua deleted file mode 100644 index 61a9aa5..0000000 --- a/awesome/.config/awesome/lain/widgets/temp.lua +++ /dev/null @@ -1,48 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - ---]] - -local newtimer = require("lain.helpers").newtimer - -local wibox = require("wibox") - -local io = io -local tonumber = tonumber - -local setmetatable = setmetatable - --- coretemp --- lain.widgets.temp -local temp = {} - -local function worker(args) - local args = args or {} - local timeout = args.timeout or 5 - local tempfile = args.tempfile or "/sys/class/thermal/thermal_zone0/temp" - local settings = args.settings or function() end - - temp.widget = wibox.widget.textbox('') - - function update() - local f = io.open(tempfile) - if f ~= nil - then - coretemp_now = tonumber(f:read("*all")) / 1000 - f:close() - else - coretemp_now = "N/A" - end - - widget = temp.widget - settings() - end - - newtimer("coretemp", timeout, update) - return temp.widget -end - -return setmetatable(temp, { __call = function(_, ...) return worker(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/yawn/init.lua b/awesome/.config/awesome/lain/widgets/yawn/init.lua deleted file mode 100644 index 3f08cd5..0000000 --- a/awesome/.config/awesome/lain/widgets/yawn/init.lua +++ /dev/null @@ -1,200 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2013, Luke Bonham - ---]] - -local newtimer = require("lain.helpers").newtimer - -local naughty = require("naughty") -local wibox = require("wibox") - -local debug = { getinfo = debug.getinfo } -local io = io -local os = { date = os.date, - getenv = os.getenv } -local string = { find = string.find, - match = string.match, - gsub = string.gsub, - sub = string.sub } -local tonumber = tonumber - -local setmetatable = setmetatable - --- YAhoo! Weather Notification --- lain.widgets.yawn -local yawn = -{ - icon = wibox.widget.imagebox(), - widget = wibox.widget.textbox('') -} - -local project_path = debug.getinfo(1, 'S').source:match[[^@(.*/).*$]] -local localizations_path = project_path .. 'localizations/' -local icon_path = project_path .. 'icons/' -local api_url = 'http://weather.yahooapis.com/forecastrss' -local units_set = '?u=c&w=' -- Default is Celsius -local language = string.match(os.getenv("LANG"), "(%S*$*)[.]") -local weather_data = nil -local notification = nil -local city_id = nil -local sky = nil -local settings = function() end - -yawn_notification_preset = {} - -local function fetch_weather() - local url = api_url .. units_set .. city_id - local f = io.popen("curl --connect-timeout 1 -fsm 3 '" .. url .. "'" ) - local text = f:read("*all") - f:close() - - -- In case of no connection or invalid city ID - -- widgets won't display - if text == "" or text:match("City not found") - then - yawn.icon:set_image(icon_path .. "na.png") - if text == "" then - weather_data = "Service not available at the moment." - yawn.widget:set_text(" N/A ") - else - weather_data = "City not found!\n" .. - "Are you sure " .. city_id .. - " is your Yahoo city ID?" - yawn.widget:set_text(" ? ") - end - return - end - - -- Processing raw data - weather_data = text:gsub("<.->", "") - weather_data = weather_data:match("Current Conditions:.-Full") or "" - - -- may still happens in case of bad connectivity - if weather_data == "" then - yawn.icon:set_image(icon_path .. "na.png") - yawn.widget:set_text(" ? ") - return - end - - weather_data = weather_data:gsub("Current Conditions:.-\n", "Now: ") - weather_data = weather_data:gsub("Forecast:.-\n", "") - weather_data = weather_data:gsub("\nFull", "") - weather_data = weather_data:gsub("[\n]$", "") - weather_data = weather_data:gsub(" [-] " , ": ") - weather_data = weather_data:gsub("[.]", ",") - weather_data = weather_data:gsub("High: ", "") - weather_data = weather_data:gsub(" Low: ", " - ") - - -- Getting info for text widget - local now = weather_data:sub(weather_data:find("Now:")+5, - weather_data:find("\n")-1) - forecast = now:sub(1, now:find(",")-1) - units = now:sub(now:find(",")+2, -2) - - -- Day/Night icon change - local hour = tonumber(os.date("%H")) - sky = icon_path - - if forecast == "Clear" or - forecast == "Fair" or - forecast == "Partly Cloudy" or - forecast == "Mostly Cloudy" - then - if hour >= 6 and hour <= 18 - then - sky = sky .. "Day" - else - sky = sky .. "Night" - end - end - - sky = sky .. forecast:gsub(" ", ""):gsub("/", "") .. ".png" - - -- In case there's no defined icon for current forecast - if io.open(sky) == nil then - sky = icon_path .. "na.png" - end - - -- Localization - local f = io.open(localizations_path .. language, "r") - if language:find("en_") == nil and f ~= nil - then - f:close() - for line in io.lines(localizations_path .. language) - do - word = string.sub(line, 1, line:find("|")-1) - translation = string.sub(line, line:find("|")+1) - weather_data = string.gsub(weather_data, word, translation) - end - end - - -- Finally setting infos - yawn.icon:set_image(sky) - widget = yawn.widget - - forecast = weather_data:match(": %S.-,"):gsub(": ", ""):gsub(",", "") - units = units:gsub(" ", "") - - settings() -end - -function yawn.hide() - if notification ~= nil then - naughty.destroy(notification) - notification = nil - end -end - -function yawn.show(t_out) - if yawn.widget._layout.text:match("?") - then - fetch_weather(settings) - end - - yawn.hide() - - notification = naughty.notify({ - preset = yawn_notification_preset, - text = weather_data, - icon = sky, - timeout = t_out - }) -end - -function yawn.register(id, args) - local args = args or {} - local timeout = args.timeout or 600 - settings = args.settings or function() end - - if args.u == "f" then units_set = '?u=f&w=' end - - city_id = id - - newtimer("yawn", timeout, fetch_weather) - - yawn.icon:connect_signal("mouse::enter", function() - yawn.show(0) - end) - yawn.icon:connect_signal("mouse::leave", function() - yawn.hide() - end) - - return yawn -end - -function yawn.attach(widget, id, args) - yawn.register(id, args) - - widget:connect_signal("mouse::enter", function() - yawn.show(0) - end) - - widget:connect_signal("mouse::leave", function() - yawn.hide() - end) -end - -return setmetatable(yawn, { __call = function(_, ...) return yawn.register(...) end }) diff --git a/awesome/.config/awesome/lain/widgets/yawn/localizations/it_IT b/awesome/.config/awesome/lain/widgets/yawn/localizations/it_IT deleted file mode 100644 index 70b0eef..0000000 --- a/awesome/.config/awesome/lain/widgets/yawn/localizations/it_IT +++ /dev/null @@ -1,60 +0,0 @@ -Now:|Ora: -Sun:|Dom: -Mon:|Lun: -Tue:|Mar: -Wed:|Mer: -Thu:|Gio: -Fri:|Ven: -Sat:|Sab: -Mostly Sunny|Abbastanza Soleggiato -Sunny|Soleggiato -Sun|Soleggiato -Rain/Thunder|Temporali -Isolated Thunderstorms|Temporali Isolati -Scattered Thunderstorms|Temporali Sparsi -Thundershowers|Rovesci Temporaleschi -Thunderstorms|Temporali -Thunder in the Vicinity|Tuoni in prossimità -Thunder|Temporale -AM|In Mattinata -PM|Nel Pomeriggio -Early|In Mattinata -Late|In Serata -Few|Sporadiche -Severe|Forti -Clear|Sereno -Fair|Sereno -Partly|Parzialmente -Mostly|Molto -Cloudy|Nuvoloso -Clouds|Nuvoloso -Scattered Showers|Temporali Sparsi -Light Snow Showers|Nevicate Leggere -Snow Showers|Nevicate -aeavy Snow|Forti Nevicate -Scattered Snow Showers|Nevicate Sparse -Mixed Rain And Snow|Pioggia E Neve -Mixed Rain And Sleet|Pioggia E Nevischio -Mixed Snow And Sleet|Neve E Nevischio -Mixed Rain And Hail|Pioggia E Grandine -Snow Flurries|Folate Di Neve -Blowing Snow|Neve Battente -Blowing Rain|Pioggia Battente -Heavy Rain|Forti Piogge -Freezing Rain|Pioggia Congelantesi -Showers|Piogge -Light Rain|Pioggia Leggera -Heavy|Forti -Rain|Piovoso -Windy|Ventoso -Wind|Ventoso -Snow|Neve -Sleet|Nevischio -Light Drizzle|Pioggia Leggera -Drizzle|Pioggia Leggera -Freezing Drizzle|Pioggerella Congelantesi -Hail|Grandine -Fog|Nebbia -Foggy|Nebbioso -Haze|Nebbia -Light|Leggere diff --git a/awesome/.config/awesome/lain/widgets/yawn/localizations/localization_template b/awesome/.config/awesome/lain/widgets/yawn/localizations/localization_template deleted file mode 100644 index 453807e..0000000 --- a/awesome/.config/awesome/lain/widgets/yawn/localizations/localization_template +++ /dev/null @@ -1,60 +0,0 @@ -Now:| -Sun:| -Mon:| -Tue:| -Wed:| -Thu:| -Fri:| -Sat:| -Mostly Sunny| -Sunny| -Sun| -Rain/Thunder| -Isolated Thunderstorms| -Scattered Thunderstorms| -Thundershowers| -Thunderstorms| -Thunder in the Vicinity| -Thunder| -AM| -PM| -Early| -Late| -Few| -Severe| -Clear| -Fair| -Partly| -Mostly| -Cloudy| -Clouds| -Scattered Showers| -Light Snow Showers| -Snow Showers| -Heavy Snow| -Scattered Snow Showers| -Mixed Rain And Snow| -Mixed Rain And Sleet| -Mixed Snow And Sleet| -Mixed Rain And Hail| -Snow Flurries| -Blowing Snow| -Blowing Rain| -Heavy Rain| -Freezing Rain| -Showers| -Light Rain| -Heavy| -Rain| -Windy| -Wind| -Snow| -Sleet| -Freezing Drizzle| -Light Drizzle| -Drizzle| -Hail| -Fog| -Foggy| -Haze| -Light| diff --git a/awesome/.config/awesome/rc.lua b/awesome/.config/awesome/rc.lua deleted file mode 100755 index 49475f4..0000000 --- a/awesome/.config/awesome/rc.lua +++ /dev/null @@ -1,911 +0,0 @@ --- ██ --- ░██ a w e s o m e ██ --- ░██ ░██ --- █████ ░██████ ██████ ██████ ██████ --- ██░░░██░██░░░██ ██░░░░██ ██░░░░ ░░░██░ --- ██░░░██░██ ░██░██ ░██░░█████ ░██ --- ░██ ░██░██ ░██░██ ░██ ░░░░░██ ░██ ▄▄▄ --- ░░██████░██ ░██░░██████ ██████ ░░██ ▀█▀██ ▄ --- ░░░░░██░░ ░░ ░░░░░░ ░░░░░░ ░░ ▀▄██████▀ --- █████ ▀█████ --- ░░░░░ ▓▓▓▓▓▓▓▓▓▓ ▀▀██▄ --- ░▓ author ▓ xero <x@xero.nu> ▀ --- ░▓ code ▓ http://code.xero.nu/dotfiles --- ░▓ mirror ▓ http://git.io/.files --- ░▓▓▓▓▓▓▓▓▓▓ --- ░░░░░░░░░░ - --- █▓▒░ libraries -gears = require("gears") -awful = require("awful") -awful.rules = require("awful.rules") -require("awful.autofocus") -wibox = require("wibox") -beautiful = require("beautiful") -naughty = require("naughty") -lain = require("lain") - --- █▓▒░ error handling -if awesome.startup_errors then - naughty.notify({ - preset = naughty.config.presets.critical, - title = "#@*! startup errors!", - text = awesome.startup_errors - }) -end -do - local in_error = false - awesome.connect_signal("debug::error", function (err) - if in_error then return end - in_error = true - naughty.notify({ - preset = naughty.config.presets.critical, - title = "#@*! an error occured!", - text = err - }) - in_error = false - end) -end - --- █▓▒░ variables -home = os.getenv("HOME") -config_dir = awful.util.getdir("config") - --- █▓▒░ user config -print(os.time().." : load config") -dofile(home.."/.config/awesome/config.lua") - --- █▓▒░ autostart applications -function run_once(cmd) - findme = cmd - firstspace = cmd:find(" ") - if firstspace then - findme = cmd:sub(0, firstspace-1) - end - awful.util.spawn_with_shell("pgrep -u $USER -x "..findme.." > /dev/null || ("..cmd..")") -end - -run_once("urxvtd") -run_once("unclutter") - --- █▓▒░ theme -beautiful.init(os.getenv("HOME").."/.config/awesome/themes/ghost/theme.lua") - --- █▓▒░ layouts -local layouts = { - -- awful layouts - -- awful.layout.suit.floating, - -- awful.layout.suit.tile, - -- awful.layout.suit.tile.left, - -- awful.layout.suit.tile.bottom, - -- awful.layout.suit.tile.top, - -- awful.layout.suit.fair, - -- awful.layout.suit.fair.horizontal, - -- awful.layout.suit.spiral, - -- awful.layout.suit.spiral.dwindle, - -- awful.layout.suit.max, - -- awful.layout.suit.max.fullscreen, - -- awful.layout.suit.magnifier, - -- lain layouts - awful.layout.suit.floating, - lain.layout.uselesstile, - lain.layout.uselesstile.left, - lain.layout.uselesstile.top, - lain.layout.uselesstile.bottom, - lain.layout.uselessfair, - lain.layout.uselessfair.horizontal, - lain.layout.termfair, - lain.layout.centerfair, - lain.layout.centerwork, - lain.layout.uselesspiral, - lain.layout.uselesspiral.dwindle, - awful.layout.suit.max.fullscreen, - awful.layout.suit.magnifier -} - --- █▓▒░ tag list -tags = { - names = {}, - layout = {} -} -for i = 1, tag_count do - tags.names[i] = tag_icon - tags.layout[i] = layouts[1] -end -for s = 1, screen.count() do - tags[s] = awful.tag(tags.names, s, tags.layout) -end - --- █▓▒░ wallpaper -if beautiful.wallpaper then - for s = 1, screen.count() do - gears.wallpaper.maximized(beautiful.wallpaper, s, true) - end -end - --- █▓▒░ menu -awesomemenu = { - {"░░▒▒▓▓███▓▓▒▒░░"}, - {"edit lua files :"}, - {"rc", editor_cmd.." "..home.."/.config/awesome/rc.lua"}, - {"config", editor_cmd.." "..home.."/.config/awesome/config.lua"}, - {"theme", editor_cmd.." "..home.."/.config/awesome/themes/ghost/theme.lua"}, - {"░░▒▒▓▓███▓▓▒▒░░"}, - {"reload", awesome.restart}, - {"exit", awesome.quit}, - {"reboot", "systemctl reboot"}, - {"showdown", "systemctl shutdown"}, -} -gfx_settings = { - {"view","bash "..home.."/code/sys/gfx-status.sh"}, - {"░░▒▒▓▓████▓▓▒▒░░"}, - {"switch to ati","bash "..home.."/code/sys/gfx-radeon.sh"}, - {"switch to intel","bash "..home.."/code/sys/gfx-intel.sh"}, - {"power off unused","bash "..home.."/code/sys/gfx-off.sh"}, - {"power on unused","bash "..home.."/code/sys/gfx-on.sh"}, -} -prefs = { - {"awesome", awesomemenu, beautiful.awesome_icon}, - {"~.xinitrc", editor_cmd.." .xinitrc"}, - {"wallpaper","nitrogen "..home.."/images/wallpaper/"}, - -- {"screensaver","xscreensaver-demo"}, - {"power manager","xfce4-power-manager-settings"}, - {"appearance","lxappearance"}, - {"resolution","arandr"}, - {"░░▒▒▓▓███▓▓▒▒░░"}, - {"graphix", gfx_settings}, -} -systemmenu = { - {"disks usage", term_exec.."ncdu"}, - {"# disks usage", rootterm.."ncdu"}, - {"cleanup","bleachbit"}, - {"# terminal", rootterm}, -} -net = { - {"chrome", webgui}, - {"iceweasel", "iceweasel"}, - {"irc", irc}, - {"filezilla", ftpgui}, -} -screenshot = { - {"screenshot", "xfce4-screenshooter"}, - {"scrot", terminal.."scrot"}, - {"scrot in 5", terminal.."scrot -d 5 '%Y-%m-%d--%s_$wx$h_scrot.png' -e 'mv $f bash "..home.."/images/ & viewnior bash "..home.."/images/$f'"}, -} -gfx = { - {"gimp","gimp"}, - {"color picker","gcolor2"}, - {"░░▒▒▓▓███▓▓▒▒░░"}, - {"screenshot", screenshot}, -} -media = { - {"media player", mediaplayer}, - {"music player", musicplayer}, - {"mp3 metadata", mp3tag}, - {"cd/dvd burner", burner}, - {"volume", volumecontrol}, -} -office = { - {"sublime",guieditor}, - {"# sublime", "gksudo "..guieditor}, - {"word","abiword"}, -} -accessories = { - {"search",search}, - {"archive",archiver}, - {"sublime",guieditor}, - {"geany","geany"}, - {"terminal",terminal}, - { "# terminal", rootterm }, - {"files", filegui}, - {"# files", "gksudo "..filegui}, - {"images",imageviewer}, - {"calculator",calc}, - {"pdf viewer",pdf}, - {"charmap","gucharmap"}, -} -applications = { - {"internet", net}, - {"graphix", gfx}, - {"entertainment", media}, - {"office", office}, - {"accessories", accessories}, - {"vbox", vbox}, -} -fun_scripts = { - {"colors", term_exec.."bash "..home.."/code/fun/colors"}, - {"colorscheme", term_exec.."bash "..home.."/code/fun/colorscheme"}, - {"dna", term_exec.."bash "..home.."/code/fun/dna"}, - {"ghosts", term_exec.."bash "..home.."/code/fun/ghosts"}, - {"hax0r", term_exec.."lua "..home.."/code/fun/2spooky.lua"}, - {"invaders", term_exec.."bash "..home.."/code/fun/invaders"}, - {"matrix", term_exec.."cmatrix"}, - {"pacman", term_exec.."bash "..home.."/code/fun/pacman"}, - {"pipes", term_exec.."bash "..home.."/code/fun/pipes"}, - {"pipesx", term_exec.."bash "..home.."/code/fun/pipesx"}, - {"rain", term_exec.."bash "..home.."/code/fun/rain"}, - {"screenfetch", term_exec.."bash "..home.."/code/fun/screenfetch"}, - {"skull", term_exec.."bash "..home.."/code/fun/skull"}, - {"slendy", term_exec.."bash "..home.."/code/fun/slendy"}, -} -climenu = { - {"blank", blanktag}, - {"$ terminal", terminal}, - {"# terminal", rootterm}, - {"file-manager", filecli}, - {"editor", editor_cmd}, - {"music player", musicplayer}, - {"web browser", webcli}, - {"cpu usage", cpucli}, - {"fun scripts", fun_scripts}, -} -mymainmenu = awful.menu({ - items = { - {"awesome", awesomemenu, beautiful.awesome_icon}, - {"run", runcmd}, - {"cli apps", climenu}, - {"░░▒▒▓▓███▓▓▒▒░░"}, - {"terminal", terminal}, - {"file manager", filegui}, - {"# file manager", "gksudo "..filegui}, - {"web browser", webgui}, - {"text editor", guieditor}, - {"# text editor", "gksudo "..guieditor}, - {"music player", musicplayer}, - {"media player", mediaplayer}, - {"keepass", passmanager}, - {"░░▒▒▓▓███▓▓▒▒░░"}, - {"applications", applications}, - {"preferences", prefs}, - {"system", systemmenu}, - {"░░▒▒▓▓███▓▓▒▒░░"}, - {"exit menu", exiter} - }, - width = 250 -}) - --- █▓▒░ wibox -markup = lain.util.markup - --- █▓▒░ textclock -clockicon = wibox.widget.imagebox(beautiful.widget_clock) -mytextclock = wibox.widget.background(awful.widget.textclock(markup("#FFFFFF",clock_format)), "#000000") - --- █▓▒░ calendar -lain.widgets.calendar:attach(mytextclock, { font_size = 10, fg = "#FFFFFF", position = "bottom_right" }) - --- █▓▒░ MPD --- mpdicon = wibox.widget.imagebox(beautiful.widget_music) --- mpdicon:buttons(awful.util.table.join(awful.button({ }, 1, function () awful.util.spawn_with_shell(musicplayer) end))) --- mpdwidget = lain.widgets.mpd({ --- settings = function() --- mpdicon:set_image(beautiful.widget_music) --- if mpd_now.state == "play" then --- artist = " "..mpd_now.artist.." " --- -- truncate titles if too long --- title = string.sub(mpd_now.title, 0, 55).." " --- else --- artist = "" --- title = "" --- end - --- widget:set_markup(markup("#74999E", artist)..title) --- end --- }) --- mpdwidgetbg = mpdwidget - --- █▓▒░ systray -systray = wibox.widget.systray() - --- █▓▒░ memory -memicon = wibox.widget.background(wibox.widget.imagebox(beautiful.widget_mem), "#000000") -memwidget = wibox.widget.background(lain.widgets.mem({ - settings = function() - widget:set_text(" "..math.floor((mem_now.used/mem_now.total)*100).."% ") - end -}), "#000000") - --- █▓▒░ cpu -cpuicon = wibox.widget.background(wibox.widget.imagebox(beautiful.widget_cpu), "#313131") -cpuwidget = wibox.widget.background(lain.widgets.cpu({ - settings = function() - widget:set_text(" "..cpu_now.usage.."% ") - end -}), "#313131") - --- █▓▒░ temp -tempicon = wibox.widget.background(wibox.widget.imagebox(beautiful.widget_temp), "#313131") -tempwidget = wibox.widget.background(lain.widgets.temp({ - settings = function() - widget:set_text(" "..coretemp_now.."°C ") - end -}), "#313131") - --- █▓▒░ file system -fsicon = wibox.widget.background(wibox.widget.imagebox(beautiful.widget_hdd), "#000000") -fswidget = wibox.widget.background(lain.widgets.fs({ - settings = function() - widget:set_text(" "..fs_now.used.."% ") - end -}), "#000000") -fswidgetbg = fswidget - --- █▓▒░ battery -baticon = wibox.widget.imagebox(beautiful.widget_battery) -batwidget = lain.widgets.bat({ - battery = battery_id, - settings = function() - widget:set_markup(" "..bat_now.perc.."% ") - if bat_now.perc == "N/A" or bat_now.perc == "100" then - baticon:set_image(beautiful.widget_ac) - return - elseif tonumber(bat_now.perc) <= 5 then - baticon:set_image(beautiful.widget_battery_empty) - elseif tonumber(bat_now.perc) <= 15 then - baticon:set_image(beautiful.widget_battery_low) - else - baticon:set_image(beautiful.widget_battery) - end - end -}) - --- █▓▒░ network -neticon = wibox.widget.background(wibox.widget.imagebox(beautiful.widget_net), "#313131") -neticon:buttons(awful.util.table.join(awful.button({ }, 1, function () awful.util.spawn_with_shell(iptraf) end))) -netwidget = wibox.widget.background(lain.widgets.net({ - settings = function() - widget:set_markup(markup("#ffffff", " "..net_now.received).. - markup("#ffffff", " / "..net_now.sent.." ")) - end -}), "#313131") - --- █▓▒░ separators -space = wibox.widget.textbox(' ') -black = wibox.widget.imagebox(beautiful.widget_black) -hash1 = wibox.widget.imagebox(beautiful.widget_hash1) -hash2 = wibox.widget.imagebox(beautiful.widget_hash2) -hash3 = wibox.widget.imagebox(beautiful.widget_hash3) -grey = wibox.widget.imagebox(beautiful.widget_grey) - --- █▓▒░ create a wibox for each screen and add it -mywibox = {} -mypromptbox = {} -mylayoutbox = {} -mytaglist = {} -mytaglist.buttons = awful.util.table.join( - awful.button({ }, 1, awful.tag.viewonly), - awful.button({ modkey }, 1, awful.client.movetotag), - awful.button({ }, 3, awful.tag.viewtoggle), - awful.button({ modkey }, 3, awful.client.toggletag), - awful.button({ }, 4, function(t) awful.tag.viewnext(awful.tag.getscreen(t)) end), - awful.button({ }, 5, function(t) awful.tag.viewprev(awful.tag.getscreen(t)) end) - ) -for s = 1, screen.count() do - - -- create a promptbox for each screen - mypromptbox[s] = awful.widget.prompt() - - -- we need one layoutbox per screen. - mylayoutbox[s] = wibox.widget.background(awful.widget.layoutbox(s), "#313131") - mylayoutbox[s]:buttons(awful.util.table.join( - awful.button({ }, 1, function () awful.layout.inc(layouts, 1) end), - awful.button({ }, 3, function () awful.layout.inc(layouts, -1) end), - awful.button({ }, 4, function () awful.layout.inc(layouts, 1) end), - awful.button({ }, 5, function () awful.layout.inc(layouts, -1) end))) - - -- create a taglist widget - mytaglist[s] = wibox.widget.background(awful.widget.taglist(s, awful.widget.taglist.filter.all, mytaglist.buttons), beautiful.tag_bg_normal) - - -- create the wibox - mywibox[s] = awful.wibox({ position = bar_position, screen = s, height = 18 }) - - -- widgets that are aligned to the upper left - local left_layout = wibox.layout.fixed.horizontal() - left_layout:add(hash3) - left_layout:add(hash3) - left_layout:add(black) - left_layout:add(mytaglist[s]) - left_layout:add(black) - left_layout:add(hash1) - left_layout:add(hash1) - left_layout:add(grey) - left_layout:add(mylayoutbox[s]) - left_layout:add(grey) - left_layout:add(hash2) - left_layout:add(hash2) - left_layout:add(mypromptbox[s]) - left_layout:add(space) - - -- widgets that are aligned to the upper right - local right_layout = wibox.layout.fixed.horizontal() - if s == 1 then - right_layout:add(hash2) - right_layout:add(hash2) - right_layout:add(grey) - right_layout:add(systray) - right_layout:add(grey) - end - right_layout:add(hash1) - right_layout:add(hash1) - right_layout:add(black) - right_layout:add(mytextclock) - right_layout:add(black) - right_layout:add(hash3) - right_layout:add(hash3) - - local middle_layout = wibox.layout.fixed.horizontal() - middle_layout:add(hash2) - middle_layout:add(hash2) - middle_layout:add(grey) - middle_layout:add(cpuicon) - middle_layout:add(cpuwidget) - middle_layout:add(grey) - middle_layout:add(hash1) - middle_layout:add(hash1) - middle_layout:add(black) - middle_layout:add(memicon) - middle_layout:add(memwidget) - middle_layout:add(black) - middle_layout:add(hash1) - middle_layout:add(hash1) - middle_layout:add(grey) - middle_layout:add(tempicon) - middle_layout:add(tempwidget) - middle_layout:add(grey) - middle_layout:add(hash1) - middle_layout:add(hash1) - middle_layout:add(space) - middle_layout:add(baticon) - middle_layout:add(batwidget) - middle_layout:add(space) - middle_layout:add(hash3) - middle_layout:add(hash3) - middle_layout:add(black) - middle_layout:add(fsicon) - middle_layout:add(fswidgetbg) - middle_layout:add(black) - middle_layout:add(hash1) - middle_layout:add(hash1) - middle_layout:add(grey) - middle_layout:add(neticon) - middle_layout:add(netwidget) - middle_layout:add(grey) - middle_layout:add(hash2) - middle_layout:add(hash2) - -- middle_layout:add(mpdicon) - -- middle_layout:add(mpdwidgetbg) - - local layout = wibox.layout.align.horizontal() - layout:set_left(left_layout) - layout:set_middle(middle_layout) - layout:set_right(right_layout) - mywibox[s]:set_widget(layout) - -end - --- █▓▒░ mouse bindings -root.buttons(awful.util.table.join( - awful.button({ }, 3, function () mymainmenu:toggle() end) -)) - --- █▓▒░ global key bindings -globalkeys = awful.util.table.join( - -- sreenshot - awful.key({ modkey }, "Print", - function () - awful.util.spawn("scrot -d 5 '%Y-%m-%d--%s_$wx$h_scrot.png' -e 'mv $f ~/images/ & viewnior ~/images/$f'") - end), - awful.key({ }, "Print", - function () - awful.util.spawn("scrot -d 5 '%Y-%m-%d--%s_$wx$h_scrot.png' -e 'mv $f ~/images/ & viewnior ~/images/$f'") - end), - - -- touchpad toggle - awful.key({ modkey, }, "m", - function () - awful.util.spawn('bash /home/xero/code/sys/toggle-touchpad.sh') - end), - - -- tag browsing - awful.key({ modkey }, "Left", - awful.tag.viewprev - ), - awful.key({ modkey }, "Right", - awful.tag.viewnext - ), - awful.key({ modkey }, "Escape", - awful.tag.history.restore - ), - - -- client focus - awful.key({ modkey }, "k", - function () - awful.client.focus.byidx( 1) - if client.focus then client.focus:raise() end - end), - awful.key({ modkey }, "j", - function () - awful.client.focus.byidx(-1) - if client.focus then client.focus:raise() end - end), - - -- client reorder - awful.key({ modkey, "Shift" }, "j", - function () - awful.client.swap.byidx( 1) - end), - awful.key({ modkey, "Shift" }, "k", - function () - awful.client.swap.byidx( -1) - end), - - -- resize tags/clients - awful.key({ modkey }, "l", - function () - awful.tag.incmwfact( 0.05) - end), - awful.key({ modkey }, "h", - function () - awful.tag.incmwfact(-0.05) - end), - awful.key({ modkey, "Shift" }, "l", - function () - awful.client.incwfact(-0.05) - end), - awful.key({ modkey, "Shift" }, "h", - function () - awful.client.incwfact( 0.05) - end), - - -- move tags/clients - awful.key({ modkey, "Control" }, "Next", - function () - awful.client.moveresize( 20, 20, -40, -40) - end), - awful.key({ modkey, "Control" }, "Prior", - function () - awful.client.moveresize(-20, -20, 40, 40) - end), - awful.key({ modkey, "Control" }, "Down", - function () - awful.client.moveresize( 0, 20, 0, 0) - end), - awful.key({ modkey, "Control" }, "Up", - function () - awful.client.moveresize( 0, -20, 0, 0) - end), - awful.key({ modkey, "Control" }, "Left", - function () - awful.client.moveresize(-20, 0, 0, 0) - end), - awful.key({ modkey, "Control" }, "Right", - function () - awful.client.moveresize( 20, 0, 0, 0) - end), - - -- show menu - awful.key({ modkey }, "w", - function () - mymainmenu:show({ keygrabber = true }) - end), - - -- show/hide wibox - awful.key({ modkey }, "b", function () - mywibox[mouse.screen].visible = not mywibox[mouse.screen].visible - end), - - -- switch mouse screen - awful.key({ modkey, "Control" }, "j", - function () - awful.screen.focus_relative( 1) - end), - awful.key({ modkey, "Control" }, "k", - function () - awful.screen.focus_relative(-1) - end), - - - -- Layout manipulation - awful.key({ modkey, }, "u", awful.client.urgent.jumpto), - awful.key({ modkey, }, "space", - function () - awful.layout.inc(layouts, 1) - end), - awful.key({ modkey, "Shift" }, "space", - function () - awful.layout.inc(layouts, -1) - end), - awful.key({ modkey, "Control" }, "n", awful.client.restore), - - -- change useless gap - awful.key({ modkey, "Control" }, "=", function () lain.util.useless_gaps_resize(1) end), - awful.key({ modkey, "Control" }, "-", function () lain.util.useless_gaps_resize(- 1) end), - - -- standard program - awful.key({ modkey, }, "Return", function () awful.util.spawn(terminal) end), - awful.key({ modkey, "Control" }, "r", awesome.restart), - awful.key({ modkey, "Shift" }, "q", awesome.quit), - - -- widgets popups - awful.key({ altkey, }, "c", function () lain.widgets.calendar:show(7) end), - awful.key({ altkey, }, "h", function () fswidget.show(7) end), - - -- MPD control - -- awful.key({ altkey, "Control" }, "Up", - -- function () - -- awful.util.spawn_with_shell("mpc toggle || ncmpcpp toggle || ncmpc toggle || pms toggle") - -- mpdwidget.update() - -- end), - -- awful.key({ altkey, "Control" }, "Down", - -- function () - -- awful.util.spawn_with_shell("mpc stop || ncmpcpp stop || ncmpc stop || pms stop") - -- mpdwidget.update() - -- end), - -- awful.key({ altkey, "Control" }, "Left", - -- function () - -- awful.util.spawn_with_shell("mpc prev || ncmpcpp prev || ncmpc prev || pms prev") - -- mpdwidget.update() - -- end), - -- awful.key({ altkey, "Control" }, "Right", - -- function () - -- awful.util.spawn_with_shell("mpc next || ncmpcpp next || ncmpc next || pms next") - -- mpdwidget.update() - -- end), - - -- clipboard - awful.key({ modkey }, "c", function () os.execute("xsel -p -o | xsel -i -b") end), - - -- prompt - awful.key({ modkey }, "r", function () mypromptbox[mouse.screen]:run() end), - awful.key({ modkey }, "x", - function () - awful.prompt.run({ prompt = "Run Lua code: " }, - mypromptbox[mouse.screen].widget, - awful.util.eval, nil, - awful.util.getdir("cache").."/history_eval") - end) - -- help cheatsheet - -- awful.key( - -- { altkey, "Shift" }, "h", - -- function () - -- naughty.notify({ - -- title = "Command Reference: Client Keybindings" - -- , text = "<span background=\"#000000\" color=\"#FFFFFF\">WIN+SPACE</span> : spawn terminal\nWIN+W : open menu" - -- , timeout = 10 - -- , position = "top_right" - -- , fg = beautiful.fg_focus - -- , bg = beautiful.bg_focus - -- }) - -- end - -- ) -) - --- █▓▒░ client key bindings -clientkeys = awful.util.table.join( - awful.key({ modkey, }, "f", - function (c) - c.fullscreen = not c.fullscreen - end), - awful.key({ modkey, "Shift" }, "c", - function (c) - c:kill() - end), - awful.key({ modkey, "Control" }, "space", - awful.client.floating.toggle - ), - awful.key({ modkey, "Control" }, "Return", - function (c) - c:swap(awful.client.getmaster()) - end), - awful.key({ modkey, }, "o", - awful.client.movetoscreen - ), - awful.key({ modkey, }, "t", - function (c) - c.ontop = not c.ontop - end), - awful.key({ modkey, }, "n", - function (c) - -- The client currently has the input focus, so it cannot be - -- minimized, since minimized clients can't have the focus. - c.minimized = true - end), - awful.key({ modkey, "Shift" }, "m", - function (c) - c.maximized_horizontal = not c.maximized_horizontal - c.maximized_vertical = not c.maximized_vertical - end) -) - --- Bind all key numbers to tags. --- Be careful: we use keycodes to make it works on any keyboard layout. --- This should map on the top row of your keyboard, usually 1 to 9. -for i = 1, 9 do - globalkeys = awful.util.table.join(globalkeys, - awful.key({ modkey }, "#"..i + 9, - function () - local screen = mouse.screen - local tag = awful.tag.gettags(screen)[i] - if tag then - awful.tag.viewonly(tag) - end - end), - awful.key({ modkey, "Control" }, "#"..i + 9, - function () - local screen = mouse.screen - local tag = awful.tag.gettags(screen)[i] - if tag then - awful.tag.viewtoggle(tag) - end - end), - awful.key({ modkey, "Shift" }, "#"..i + 9, - function () - local tag = awful.tag.gettags(client.focus.screen)[i] - if client.focus and tag then - awful.client.movetotag(tag) - end - end), - awful.key({ modkey, "Control", "Shift" }, "#"..i + 9, - function () - local tag = awful.tag.gettags(client.focus.screen)[i] - if client.focus and tag then - awful.client.toggletag(tag) - end - end)) -end - -clientbuttons = awful.util.table.join( - awful.button({ }, 1, - function (c) - client.focus = c; c:raise() - end), - awful.button({ modkey }, 1, - awful.mouse.client.move - ), - awful.button({ modkey }, 3, - awful.mouse.client.resize - ) -) - --- set keys -root.keys(globalkeys) - --- █▓▒░ rules -awful.rules.rules = { - -- catch all rules - { rule = { }, - properties = { - border_width = beautiful.border_width, - border_color = beautiful.border_normal, - focus = true, - keys = clientkeys, - buttons = clientbuttons - } }, - -- app rules - { rule = { class = "smplayer" }, - properties = { - floating = true - } - }, - { rule = { class = "gimp" }, - properties = { - floating = true - } - }, - { rule = { name = "File Operation Progress" }, - properties = { - floating = true - } - }, - { rule = { name = "blank" }, - properties = { - opacity = 0 -- works via composite manager - } - }, - { rule = { name = "goodbye" }, - properties = { - floating = true - }, - callback = function(c) - awful.placement.centered(c, nil) - end - }, - { rule = { name = "urxvt" }, - properties = { - -- fix term sizing calculation glitches - size_hints_honor = false - } - } -} --- █▓▒░ signals --- change tag names dynamically -dynamic_tagging = function() - for s = 1, screen.count() do - -- get a list of all tags - local atags = awful.tag.gettags(s) - -- set the standard icon - for i, t in ipairs(atags) do - t.name = tag_icon - end - - -- get a list of all running clients - local clist = client.get(s) - for i, c in ipairs(clist) do - -- get the tags on which the client is displayed - local ctags = c:tags() - for i, t in ipairs(ctags) do - -- set active icon - t.name = tag_icon_active - end - end - end -end - --- opened client -client.connect_signal("manage", function (c, startup) - dynamic_tagging() - - if not startup and not c.size_hints.user_position - and not c.size_hints.program_position then - awful.placement.no_overlap(c) - awful.placement.no_offscreen(c) - end - -- sloppy focus - if sloppy_focus then - c:connect_signal("mouse::enter", function(c) - if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier - and awful.client.focus.filter(c) then - client.focus = c - end - end) - end -end) - --- closed client -client.connect_signal("unmanage", function (c, startup) - dynamic_tagging() -end) - --- border rollovers -client.connect_signal("focus", - function(c) - if c.maximized_horizontal == true and c.maximized_vertical == true then - c.border_width = 0 - c.border_color = beautiful.border_normal - else - c.border_width = beautiful.border_width - c.border_color = beautiful.border_focus - end - end) -client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end) - --- rearrange clients -for s = 1, screen.count() do screen[s]:connect_signal("arrange", function () - dynamic_tagging() - local clients = awful.client.visible(s) - local layout = awful.layout.getname(awful.layout.get(s)) - - if #clients > 0 then -- fine grained borders and floaters control - for _, c in pairs(clients) do -- floaters always have borders - if awful.client.floating.get(c) or layout == "floating" then - c.border_width = beautiful.border_width - - -- no borders with only one visible client - elseif #clients == 1 or layout == "max" then - clients[1].border_width = 0 - awful.client.moveresize(0, 0, 2, 2, clients[1]) - else - c.border_width = beautiful.border_width - end - end - end -end) -end - --- disable startup-notification globally -local oldspawn = awful.util.spawn -awful.util.spawn = function (s) - oldspawn(s, false) -end - -run_once("nitrogen --restore") diff --git a/awesome/.config/awesome/scratchdrop/README.md b/awesome/.config/awesome/scratchdrop/README.md deleted file mode 100644 index 8eec9c6..0000000 --- a/awesome/.config/awesome/scratchdrop/README.md +++ /dev/null @@ -1,3 +0,0 @@ -This is the `drop` section of [scratchpad](http://awesome.naquadah.org/wiki/Scratchpad_manager). - -I cutted out the rest because I don't use it. diff --git a/awesome/.config/awesome/scratchdrop/init.lua b/awesome/.config/awesome/scratchdrop/init.lua deleted file mode 100644 index e5d91c3..0000000 --- a/awesome/.config/awesome/scratchdrop/init.lua +++ /dev/null @@ -1,133 +0,0 @@ -------------------------------------------------------------------- --- Drop-down applications manager for the awesome window manager -------------------------------------------------------------------- --- Coded by: * Lucas de Vries <lucas@glacicle.com> --- Hacked by: * Adrian C. (anrxc) <anrxc@sysphere.org> --- Licensed under the WTFPL version 2 --- * http://sam.zoy.org/wtfpl/COPYING -------------------------------------------------------------------- --- To use this module add: --- local scratchdrop = require("scratchdrop") --- to the top of your rc.lua, and call it from a keybinding: --- scratchdrop(prog, vert, horiz, width, height, sticky, screen) --- --- Parameters: --- prog - Program to run; "urxvt", "gmrun", "thunderbird" --- vert - Vertical; "bottom", "center" or "top" (default) --- horiz - Horizontal; "left", "right" or "center" (default) --- width - Width in absolute pixels, or width percentage --- when <= 1 (1 (100% of the screen) by default) --- height - Height in absolute pixels, or height percentage --- when <= 1 (0.25 (25% of the screen) by default) --- sticky - Visible on all tags, false by default --- screen - Screen (optional), mouse.screen by default -------------------------------------------------------------------- - --- Grab environment -local pairs = pairs -local awful = require("awful") -local setmetatable = setmetatable -local capi = { - mouse = mouse, - client = client, - screen = screen -} - --- Scratchdrop: drop-down applications manager for the awesome window manager -local scratchdrop = {} -- module scratch.drop - -local dropdown = {} - --- Create a new window for the drop-down application when it doesn't --- exist, or toggle between hidden and visible states when it does -function toggle(prog, vert, horiz, width, height, sticky, screen) - vert = vert or "top" - horiz = horiz or "center" - width = width or 1 - height = height or 0.25 - sticky = sticky or false - screen = screen or capi.mouse.screen - - -- Determine signal usage in this version of awesome - local attach_signal = capi.client.connect_signal or capi.client.add_signal - local detach_signal = capi.client.disconnect_signal or capi.client.remove_signal - - if not dropdown[prog] then - dropdown[prog] = {} - - -- Add unmanage signal for scratchdrop programs - attach_signal("unmanage", function (c) - for scr, cl in pairs(dropdown[prog]) do - if cl == c then - dropdown[prog][scr] = nil - end - end - end) - end - - if not dropdown[prog][screen] then - spawnw = function (c) - dropdown[prog][screen] = c - - -- Scratchdrop clients are floaters - awful.client.floating.set(c, true) - - -- Client geometry and placement - local screengeom = capi.screen[screen].workarea - - if width <= 1 then width = (screengeom.width * width) - 3 end - if height <= 1 then height = screengeom.height * height end - - if horiz == "left" then x = screengeom.x - elseif horiz == "right" then x = screengeom.width - width - else x = screengeom.x+(screengeom.width-width)/2 - 1 end - - if vert == "bottom" then y = screengeom.height + screengeom.y - height - elseif vert == "center" then y = screengeom.y+(screengeom.height-height)/2 - else y = screengeom.y end - - -- Client properties - c:geometry({ x = x, y = y, width = width, height = height }) - c.ontop = true - c.above = true - c.skip_taskbar = true - if sticky then c.sticky = true end - if c.titlebar then awful.titlebar.remove(c) end - - c:raise() - capi.client.focus = c - detach_signal("manage", spawnw) - end - - -- Add manage signal and spawn the program - attach_signal("manage", spawnw) - awful.util.spawn_with_shell(prog, false) -- original without '_with_shell' - else - -- Get a running client - c = dropdown[prog][screen] - - -- Switch the client to the current workspace - if c:isvisible() == false then c.hidden = true - awful.client.movetotag(awful.tag.selected(screen), c) - end - - -- Focus and raise if hidden - if c.hidden then - -- Make sure it is centered - if vert == "center" then awful.placement.center_vertical(c) end - if horiz == "center" then awful.placement.center_horizontal(c) end - c.hidden = false - c:raise() - capi.client.focus = c - else -- Hide and detach tags if not - c.hidden = true - local ctags = c:tags() - for i, t in pairs(ctags) do - ctags[i] = nil - end - c:tags(ctags) - end - end -end - -return setmetatable(scratchdrop, { __call = function(_, ...) return toggle(...) end }) diff --git a/awesome/.config/awesome/themes/ghost/gfx.png b/awesome/.config/awesome/themes/ghost/gfx.png Binary files differdeleted file mode 100644 index b6ea8d5..0000000 --- a/awesome/.config/awesome/themes/ghost/gfx.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/hash.png b/awesome/.config/awesome/themes/ghost/hash.png Binary files differdeleted file mode 100644 index 59399c6..0000000 --- a/awesome/.config/awesome/themes/ghost/hash.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/centerfair.png b/awesome/.config/awesome/themes/ghost/layouts/centerfair.png Binary files differdeleted file mode 100644 index 98dc698..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/centerfair.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/centerwork.png b/awesome/.config/awesome/themes/ghost/layouts/centerwork.png Binary files differdeleted file mode 100644 index 8d4c362..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/centerwork.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/cpu.png b/awesome/.config/awesome/themes/ghost/layouts/cpu.png Binary files differdeleted file mode 100644 index 6cbc5ee..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/cpu.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/dwindle.png b/awesome/.config/awesome/themes/ghost/layouts/dwindle.png Binary files differdeleted file mode 100644 index 3569d6a..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/dwindle.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/fairh.png b/awesome/.config/awesome/themes/ghost/layouts/fairh.png Binary files differdeleted file mode 100644 index a2266f2..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/fairh.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/fairv.png b/awesome/.config/awesome/themes/ghost/layouts/fairv.png Binary files differdeleted file mode 100644 index 82d863c..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/fairv.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/floating.png b/awesome/.config/awesome/themes/ghost/layouts/floating.png Binary files differdeleted file mode 100644 index c3f5dfe..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/floating.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/magnifier.png b/awesome/.config/awesome/themes/ghost/layouts/magnifier.png Binary files differdeleted file mode 100644 index 01d031b..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/magnifier.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/max.png b/awesome/.config/awesome/themes/ghost/layouts/max.png Binary files differdeleted file mode 100644 index 304fb6c..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/max.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/spiral.png b/awesome/.config/awesome/themes/ghost/layouts/spiral.png Binary files differdeleted file mode 100644 index c67c854..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/spiral.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/termfair.png b/awesome/.config/awesome/themes/ghost/layouts/termfair.png Binary files differdeleted file mode 100644 index 3e06023..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/termfair.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/tile.png b/awesome/.config/awesome/themes/ghost/layouts/tile.png Binary files differdeleted file mode 100644 index 762fedb..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/tile.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/tilebottom.png b/awesome/.config/awesome/themes/ghost/layouts/tilebottom.png Binary files differdeleted file mode 100644 index 166635f..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/tilebottom.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/tileleft.png b/awesome/.config/awesome/themes/ghost/layouts/tileleft.png Binary files differdeleted file mode 100644 index f280681..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/tileleft.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/layouts/tiletop.png b/awesome/.config/awesome/themes/ghost/layouts/tiletop.png Binary files differdeleted file mode 100644 index 0a7edf4..0000000 --- a/awesome/.config/awesome/themes/ghost/layouts/tiletop.png +++ /dev/null diff --git a/awesome/.config/awesome/themes/ghost/theme.lua b/awesome/.config/awesome/themes/ghost/theme.lua deleted file mode 100644 index f1df307..0000000 --- a/awesome/.config/awesome/themes/ghost/theme.lua +++ /dev/null @@ -1,93 +0,0 @@ --- ██ --- ░██ a w e s o m e ██ --- ░██ ░██ --- █████ ░██████ ██████ ██████ ██████ --- ██░░░██░██░░░██ ██░░░░██ ██░░░░ ░░░██░ --- ██░░░██░██ ░██░██ ░██░░█████ ░██ --- ░██ ░██░██ ░██░██ ░██ ░░░░░██ ░██ ▄▄▄ --- ░░██████░██ ░██░░██████ ██████ ░░██ ▀█▀██ ▄ --- ░░░░░██░░ ░░ ░░░░░░ ░░░░░░ ░░ ▀▄██████▀ --- █████ ▀█████ --- ░░░░░ ▓▓▓▓▓▓▓▓▓▓ ▀▀██▄ --- ░▓ author ▓ xero <x@xero.nu> ▀ --- ░▓ code ▓ http://code.xero.nu/dotfiles --- ░▓ mirror ▓ http://git.io/.files --- ░▓▓▓▓▓▓▓▓▓▓ --- ░░░░░░░░░░ - -theme = {} - -themes_dir = os.getenv("HOME") .. "/.config/awesome/themes/ghost" -theme.wallpaper = themes_dir .. "/hash.png" - -theme.font = "gohuFont" -theme.fg_normal = "#DDDDFF" -theme.fg_focus = "#F0DFAF" -theme.fg_urgent = "#CC9393" -theme.bg_normal = "#1A1A1A" -theme.bg_focus = "#313131" -theme.bg_urgent = "#1A1A1A" -theme.bg_systray = "#2F2F2F" -theme.tag_bg_normal = "#000000" -theme.border_width = "1" -theme.border_normal = "#3F3F3F" -theme.border_focus = "#7F7F7F" -theme.border_marked = "#CC9393" -theme.titlebar_bg_focus = "#FFFFFF" -theme.titlebar_bg_normal = "#FFFFFF" -theme.textbox_widget_margin_top = 1 -theme.notify_fg = theme.fg_normal -theme.notify_bg = theme.bg_normal -theme.notify_border = theme.border_focus -theme.awful_widget_height = 14 -theme.awful_widget_margin_top = 2 -theme.useless_gap_width = 10 -theme.mouse_finder_color = "#CC9393" -theme.menu_height = "16" -theme.menu_width = "150" - -theme.menu_submenu_icon = themes_dir .. "/icons/submenu.png" -theme.tasklist_disable_icon = true -- do not display the taglist squares - -theme.layout_tile = themes_dir .. "/layouts/tile.png" -theme.layout_tilegaps = themes_dir .. "/layouts/tile.png" -theme.layout_tileleft = themes_dir .. "/layouts/tileleft.png" -theme.layout_tilebottom = themes_dir .. "/layouts/tilebottom.png" -theme.layout_tiletop = themes_dir .. "/layouts/tiletop.png" -theme.layout_fairv = themes_dir .. "/layouts/fairv.png" -theme.layout_fairh = themes_dir .. "/layouts/fairh.png" -theme.layout_spiral = themes_dir .. "/layouts/spiral.png" -theme.layout_dwindle = themes_dir .. "/layouts/dwindle.png" -theme.layout_max = themes_dir .. "/layouts/max.png" -theme.layout_fullscreen = themes_dir .. "/layouts/max.png" -theme.layout_magnifier = themes_dir .. "/layouts/magnifier.png" -theme.layout_floating = themes_dir .. "/layouts/floating.png" -theme.layout_uselesstile = themes_dir .. "/layouts/tile.png" -theme.layout_uselesstileleft = themes_dir .. "/layouts/tileleft.png" -theme.layout_uselesstiletop = themes_dir .. "/layouts/tiletop.png" -theme.layout_uselesstilebottom = themes_dir .. "/layouts/tilebottom.png" -theme.layout_uselessfair = themes_dir .. "/layouts/fairv.png" -theme.layout_uselessfairh = themes_dir .. "/layouts/fairh.png" -theme.layout_termfair = themes_dir .. "/layouts/termfair.png" -theme.layout_uselesspiral = themes_dir .. "/layouts/spiral.png" -theme.layout_uselessdwindle = themes_dir .. "/layouts/dwindle.png" -theme.layout_centerfair = themes_dir .. "/layouts/centerfair.png" -theme.layout_centerwork = themes_dir .. "/layouts/centerwork.png" - -theme.widget_hash1 = themes_dir .. "/icons/hash1.png" -theme.widget_hash2 = themes_dir .. "/icons/hash2.png" -theme.widget_hash3 = themes_dir .. "/icons/hash3.png" -theme.widget_grey = themes_dir .. "/icons/grey.png" -theme.widget_black = themes_dir .. "/icons/black.png" -theme.widget_ac = themes_dir .. "/icons/ac.png" -theme.widget_battery = themes_dir .. "/icons/battery.png" -theme.widget_battery_low = themes_dir .. "/icons/battery_low.png" -theme.widget_battery_empty = themes_dir .. "/icons/battery_empty.png" -theme.widget_mem = themes_dir .. "/icons/mem.png" -theme.widget_cpu = themes_dir .. "/icons/cpu.png" -theme.widget_temp = themes_dir .. "/icons/temp.png" -theme.widget_net = themes_dir .. "/icons/net.png" -theme.widget_hdd = themes_dir .. "/icons/hdd.png" -theme.widget_music = themes_dir .. "/icons/note.png" - -return theme diff --git a/awesome/.zprofile b/awesome/.zprofile deleted file mode 100644 index 3435b2c..0000000 --- a/awesome/.zprofile +++ /dev/null @@ -1 +0,0 @@ -[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && startx diff --git a/compton/.config/compton.conf b/compton/.config/compton.conf deleted file mode 100644 index 574b1e9..0000000 --- a/compton/.config/compton.conf +++ /dev/null @@ -1,45 +0,0 @@ -# Shadow -shadow = false; -no-dnd-shadow = true; -no-dock-shadow = true; -#clear-shadow = true; -#shadow-radius = 7; -#shadow-offset-x = -7; -#shadow-offset-y = -7; -shadow-opacity = 0.4; -# shadow-red = 0.0; -# shadow-green = 0.0; -# shadow-blue = 0.0; -shadow-exclude = [ "n:e:xfce4-notifyd" ]; -#shadow-ignore-shaped = false; - -# Opacity -menu-opacity = 0.9; -#inactive-opacity = 0.8; -#frame-opacity = 0.7; -inactive-opacity-override = false; -alpha-step = 0.06; - -# Fading -fading = false; -# fade-delta = 30; -fade-in-step = 0.03; -fade-out-step = 0.03; -# no-fading-openclose = true; - -# Other -mark-wmwin-focused = true; -mark-ovredir-focused = true; -detect-rounded-corners = true; -detect-client-opacity = true; -#refresh-rate = 0; -#vsync = "none"; -dbe = false; -paint-on-overlay = false; -sw-opti = false; - -# Window type settings -wintypes: -{ - tooltip = { fade = true; shadow = false; opacity = 0.85; }; -}; diff --git a/herbstluftwm/.config/herbstluftwm/autostart b/herbstluftwm/.config/herbstluftwm/autostart deleted file mode 100755 index c445ebf..0000000 --- a/herbstluftwm/.config/herbstluftwm/autostart +++ /dev/null @@ -1,184 +0,0 @@ -#!/bin/sh -# -# ██ ██ ██ ██ ████ ██ -# ░██ ░██ ░██ ░██ ░██░ ░██ -# ░██ █████ ██████░██ ██████ ██████ ░██ ██ ██ ██████ ██████ -# ░██████ ██░░░██░░██░░█░██████ ██░░░░ ░░░██░ ░██░██ ░██░░░██░ ░░░██░ -# ░██░░░██░███████ ░██ ░ ░██░░░██░░█████ ░██ ░██░██ ░██ ░██ ░██ -# ░██ ░██░██░░░░ ░██ ░██ ░██ ░░░░░██ ░██ ░██░██ ░██ ░██ ░██ -# ░██ ░██░░██████░███ ░██████ ██████ ░░██ ███░░██████ ░██ ░░██ -# ░░ ░░ ░░░░░░ ░░░ ░░░░░ ░░░░░░ ░░ ░░░ ░░░░░░ ░░ ░░ - -hc() { - herbstclient "$@" -} - -hc emit_hook reload - -# remove all existing keybindings -hc keyunbind --all - -# close tray if reloading -killall stalonetray - -# gap counter -echo 35 > /tmp/herbstluftwm-gap - -# keybindings -Mod=Mod4 -Alt=Mod1 - -# run menu -hc keybind $Mod-w spawn interrobang -hc keybind $Mod-r spawn interrobang - -# toggle touchpad -hc keybind $Mod-m spawn bash $HOME/bin/toggle-touchpad - -# dynamic window gap -hc keybind $Mod-9 spawn bash $HOME/bin/herbstluftwm-remove-gap -hc keybind $Mod-0 spawn bash $HOME/bin/herbstluftwm-add-gap - -# generic actions -hc keybind $Mod-Shift-q quit -hc keybind $Mod-Shift-r reload -hc keybind $Mod-Shift-c close -hc keybind $Mod-Return spawn urxvtc - -# basic movement -# focusing clients -hc keybind $Mod-Left focus left -hc keybind $Mod-Down focus down -hc keybind $Mod-Up focus up -hc keybind $Mod-Right focus right -hc keybind $Mod-h focus left -hc keybind $Mod-j focus down -hc keybind $Mod-k focus up -hc keybind $Mod-l focus right - -# moving clients -hc keybind $Mod-Shift-Left shift left -hc keybind $Mod-Shift-Down shift down -hc keybind $Mod-Shift-Up shift up -hc keybind $Mod-Shift-Right shift right -hc keybind $Mod-Shift-h shift left -hc keybind $Mod-Shift-j shift down -hc keybind $Mod-Shift-k shift up -hc keybind $Mod-Shift-l shift right - -# splitting frames -# create an empty frame at the specified direction -hc keybind $Mod-u split bottom 0.5 #row -hc keybind $Mod-o split right 0.5 #column -# let the current frame explode into subframes -hc keybind $Mod-Control-space split explode - -# resizing frames -resizestep=0.05 -hc keybind $Mod-Control-h resize left +$resizestep -hc keybind $Mod-Control-j resize down +$resizestep -hc keybind $Mod-Control-k resize up +$resizestep -hc keybind $Mod-Control-l resize right +$resizestep -hc keybind $Mod-Control-Left resize left +$resizestep -hc keybind $Mod-Control-Down resize down +$resizestep -hc keybind $Mod-Control-Up resize up +$resizestep -hc keybind $Mod-Control-Right resize right +$resizestep - - -# tags -#tag_names=( 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 ) -tag_names=( {0..3} ) - -# set up normal tags -hc rename default "${tag_names[0]}" || true -for i in ${!tag_names[@]} ; do - hc add "${tag_names[$i]}" -done - -# cycle through tags -hc keybind $Mod-$Alt-Left use_index -1 --skip-visible -hc keybind $Mod-$Alt-Right use_index +1 --skip-visible - -# layouting -hc keybind $Mod-x remove -hc keybind $Mod-space cycle_layout 1 -hc keybind $Mod-Shift-space cycle_layout -1 -#hc keybind $Mod-s floating toggle -hc keybind $Mod-f fullscreen toggle -hc keybind $Mod-p pseudotile toggle - -# mouse -hc mouseunbind --all -hc mousebind $Mod-Button1 move -hc mousebind $Mod-Button2 zoom -hc mousebind $Mod-Button3 resize - -# focus -hc keybind $Mod-BackSpace cycle_monitor -hc keybind $Mod-Tab cycle_all +1 -hc keybind $Mod-Shift-Tab cycle_all -1 -hc keybind $Mod-n cycle -hc keybind $Mod-i jumpto urgent - -# theme -hc attr theme.tiling.reset 1 -hc attr theme.floating.reset 1 -hc set frame_border_active_color '#222222' -hc set frame_border_normal_color '#222222' -hc set frame_bg_normal_color '#222222' -hc set frame_bg_active_color '#000000' -hc set frame_border_width 0 -hc set always_show_frame 0 -hc set frame_bg_transparent 1 -hc set frame_transparent_width 0 -hc set frame_gap 8 - -hc attr theme.active.color '#000000' #6A8C8C -hc attr theme.normal.color '#222222' -hc attr theme.urgent.color '#000000' -hc attr theme.inner_width 0 -hc attr theme.inner_color black -hc attr theme.border_width 3 -hc attr theme.floating.border_width 3 -hc attr theme.floating.outer_width 1 -hc attr theme.floating.outer_color black -hc attr theme.active.inner_color '#222222' -hc attr theme.active.outer_color '#000000' -hc attr theme.background_color '#141414' - -hc set window_gap 35 -hc set frame_padding 0 -hc set smart_window_surroundings 0 -hc set smart_frame_surroundings 1 -hc set mouse_recenter_gap 0 - -# rules -hc unrule -F -#hc rule class=XTerm tag=3 # move all xterms to tag 3 -hc rule focus=on # normally focus new clients -#hc rule focus=off # normally do not focus new clients -# give focus to most common terminals -#hc rule class~'(.*[Rr]xvt.*|.*[Tt]erm|Konsole)' focus=on -hc rule windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' pseudotile=on -hc rule windowtype='_NET_WM_WINDOW_TYPE_DIALOG' focus=on -hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off - -# unlock, just to be sure -hc unlock - -herbstclient set tree_style '╾│ ├└╼─┐' - -# do multi monitor setup here, e.g.: -# hc set_monitors 1280x1024+0+0 1280x1024+1280+0 -# or simply: -hc detect_monitors - -# find the panel -#panel=~/.config/herbstluftwm/conkypanel -panel=~/.config/herbstluftwm/panel.sh -[ -x "$panel" ] || panel=/etc/xdg/herbstluftwm/panel.sh -for monitor in $(herbstclient list_monitors | cut -d: -f1) -do - # start it on each monitor - "$panel" $monitor & -done diff --git a/herbstluftwm/.config/herbstluftwm/panel.sh b/herbstluftwm/.config/herbstluftwm/panel.sh deleted file mode 100755 index 26c6055..0000000 --- a/herbstluftwm/.config/herbstluftwm/panel.sh +++ /dev/null @@ -1,196 +0,0 @@ -#!/bin/bash -# ██ ████ -# ░██ █░░░░█ -# ░██ ██████ █████ ███████ ░░ ░█ -# ██████░░░░██ ██░░░██░░██░░░██ ███ -# ██░░░██ ██ ░███████ ░██ ░██ █░░ -# ░██ ░██ ██ ░██░░░░ ░██ ░██ █░ -# ░░██████ ██████░░██████ ███ ░██░██████ -# ░░░░░░ ░░░░░░ ░░░░░░ ░░░ ░░ ░░░░░░ - -hc() { "${herbstclient_command[@]:-herbstclient}" "$@" ;} -monitor=${1:-0} -geometry=( $(herbstclient monitor_rect "$monitor") ) -if [ -z "$geometry" ] -then - echo "Invalid monitor $monitor" - exit 1 -fi -# geometry has the format W H X Y -x=${geometry[0]} -y=${geometry[1]} -panel_width=268 -panel_height=16 -#font="-*-fixed-medium-*-*-*-12-*-*-*-*-*-*-*" -font="-Gohu-GohuFont-Medium-R-Normal--11-80-100-100-C-60-ISO10646-1" -#font2="-misc-stlarch-medium-r-normal--10-100-75-75-c-80-iso10646-1" - -bgcolor='#000000' -selbg='#6A8C8C' -selfg='#101010' - -# try to find textwidth binary. -if which textwidth &> /dev/null ; then - textwidth="textwidth"; -elif which dzen2-textwidth &> /dev/null ; then - textwidth="dzen2-textwidth"; -else - echo "This script requires the textwidth tool of the dzen2 project." - exit 1 -fi - -# detect version -if dzen2 -v 2>&1 | head -n 1 | grep -q '^dzen-\([^,]*-svn\|\),' -then - dzen2_svn="true" -else - dzen2_svn="" -fi - -if awk -Wv 2>/dev/null | head -1 | grep -q '^mawk' -then - # mawk needs "-W interactive" to line-buffer stdout correctly - uniq_linebuffered() { - awk -W interactive '$0 != l { print ; l=$0 ; fflush(); }' "$@" - } -else - # other awk versions (e.g. gawk) issue a warning with "-W interactive", so - # we don't want to use it there. - uniq_linebuffered() { - awk '$0 != l { print ; l=$0 ; fflush(); }' "$@" - } -fi - -hc pad $monitor $panel_height - -{ - ### event generator ### - # based on different input data (mpc, date, hlwm hooks, ...) this generates events, formed like this: - # <eventname>\t<data> [...] - # e.g. - # date ^fg(#efefef)18:33^fg(#909090), 2013-10-^fg(#efefef)29 - - #mpc idleloop player & - while true - do - # "date" output is checked once a second, but an event is only - # generated if the output changed compared to the previous run. - date +$'date\t ^ca(1,~/bin/calendar)^fg(#d9d9d9)^i(/usr/share/icons/stlarch_icons/clock1.xbm) ^fg(#efefef)%H:%M^fg(#bcbcbc) %Y-%m-^fg(#efefef)%d^ca()' - sleep 1 || break - done > >(uniq_linebuffered) & - childpid=$! - hc --idle - kill $childpid -} 2> /dev/null | { - IFS=$'\t' read -ra tags <<< "$(hc tag_status $monitor)" - visible=true - date="" - windowtitle="" - while true - do - - ### output ### - # this part prints dzen data based on the _previous_ data handling run, - # and then waits for the next event to happen. - - echo -n "^bg($bgcolor)$date ^bg(#111111) " - # draw tags - for i in "${tags[@]}" - do - case ${i:0:1} in - '#') - echo -n "^bg(#5F8787)^fg(#222222)" - ;; - '+') - echo -n "^bg(#666666)^fg(#141414)" - ;; - ':') - echo -n "^bg(#3a3a3a)^fg(#bcbcbc)" - ;; - '!') - echo -n "^bg(#F92672)^fg(#141414)" - ;; - *) - echo -n "^bg(#222222)^fg(#bcbcbc)" - ;; - esac - if [ ! -z "$dzen2_svn" ] - then - # clickable tags if using SVN dzen - echo -n "^ca(1,\"${herbstclient_command[@]:-herbstclient}\" " - echo -n "focus_monitor \"$monitor\" && " - echo -n "\"${herbstclient_command[@]:-herbstclient}\" " - echo -n " " - fi - if [ ${i:0:1 } == "#" ] - then - echo -n "use \"${i:1}\") ^i(/usr/share/icons/stlarch_icons/monocle2.xbm) ^ca()" - else - echo -n "use \"${i:1}\") ^i(/usr/share/icons/stlarch_icons/monocle.xbm) ^ca()" - fi - done - echo - - ### data handling ### - # this part handles the events generated in the event loop, and sets - # internal variables based on them. The event and its arguments are - # read into the array cmd, then action is taken depending on the event - # name. - # "special" events (quit_panel/togglehidepanel/reload) are also handled - # here. - - # wait for next event - IFS=$'\t' read -ra cmd || break - # find out event origin - case "${cmd[0]}" in - tag*) - #echo "resetting tags" >&2 - IFS=$'\t' read -ra tags <<< "$(hc tag_status $monitor)" - ;; - date) - #echo "resetting date" >&2 - date="${cmd[@]:1}" - ;; - quit_panel) - exit - ;; - togglehidepanel) - currentmonidx=$(hc list_monitors | sed -n '/\[FOCUS\]$/s/:.*//p') - if [ "${cmd[1]}" -ne "$monitor" ] ; then - continue - fi - if [ "${cmd[1]}" = "current" ] && [ "$currentmonidx" -ne "$monitor" ] - then - continue - fi - echo "^togglehide()" - if $visible - then - visible=false - hc pad $monitor 0 - else - visible=true - hc pad $monitor $panel_height - fi - ;; - reload) - exit - ;; - focus_changed|window_title_changed) - windowtitle="${cmd[@]:2}" - ;; - #player) - # ;; - esac - done - - ### dzen2 ### - # after the data is gathered and processed, pipe the output to dzen2. - -} 2> /dev/null | dzen2 -w $panel_width -x $x -y $y -fn "$font" -h $panel_height \ - -e 'button3=;button4=exec:herbstclient use_index -1;button5=exec:herbstclient use_index +1' \ - -ta l -bg "$bgcolor" -fg '#efefef' & - -#wait 2 seconds then load the stand alone tray -sleep 2 -stalonetray diff --git a/herbstluftwm/.xinitrc b/herbstluftwm/.xinitrc deleted file mode 100644 index b55f96a..0000000 --- a/herbstluftwm/.xinitrc +++ /dev/null @@ -1,75 +0,0 @@ -#!/bin/sh -# -# ██ ██ ██ -# ░░ ░░ ░██ -# ██ ██ ██ ███████ ██ ██████ ██████ █████ -# ░░██ ██ ░██░░██░░░██░██░░░██░ ░░██░░█ ██░░░██ -# ░░███ ░██ ░██ ░██░██ ░██ ░██ ░ ░██ ░░ -# ██░██ ░██ ░██ ░██░██ ░██ ░██ ░██ ██ -# ██ ░░██░██ ███ ░██░██ ░░██ ░███ ░░█████ -# ░░ ░░ ░░ ░░░ ░░ ░░ ░░ ░░░ ░░░░░ -# -# ▓▓▓▓▓▓▓▓▓▓ -# ░▓ author ▓ xero <x@xero.nu> -# ░▓ code ▓ http://code.xero.nu/dotfiles -# ░▓ mirror ▓ http://git.io/.files -# ░▓▓▓▓▓▓▓▓▓▓ -# ░░░░░░░░░░ - -# merge custom x resources -xrdb -merge "${HOME}/.Xdefaults" & - -# custom keymappings -+xmodmap ~/.xmodmap - -# start the terminal emulator daemon -urxvtd -q -f -o & - -# wifi -/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & -(sleep 2s && nm-applet --sm-disable) & - -# power management -(sleep 2s && xfce4-power-manager) & - -# sound mixer -(sleep 2s && pnmixer) & - -# volume keys daemon -(sleep 2s && xfce4-volumed) & - -# compositing manager -#compton -b --config ~/.config/compton.conf & - -# start thunar daemon -thunar --daemon & - -# wallpaper -nitrogen --restore & - -# configure touchpad -syndaemon -i 0.8 -d & -if egrep -iq 'touchpad' /proc/bus/input/devices; then - synclient VertEdgeScroll=0 & - synclient TapButton1=1 & - synclient HorizTwoFingerScroll=1 & -fi - -# clipboard manager -(sleep 3s && clipit) & - -# keyboard settings - 250 ms delay and 25 cps (characters per second) repeat rate. -xset r rate 250 25 & - -# disable system beep -xset b off & - -# start the rock -mpd & - -# setup fonts -xset +fp ~/.fonts & -xset fp rehash & - -# ░▒▓█ herbstluft █▓▒░ -exec herbstluftwm --locked diff --git a/herbstluftwm/.zprofile b/herbstluftwm/.zprofile deleted file mode 100644 index e74210c..0000000 --- a/herbstluftwm/.zprofile +++ /dev/null @@ -1,2 +0,0 @@ -[ ! -s ~/.mpd/pid ] && mpd -[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && startx diff --git a/herbstluftwm/bin/calendar b/herbstluftwm/bin/calendar deleted file mode 100755 index 28199ae..0000000 --- a/herbstluftwm/bin/calendar +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -# popup calendar for dzen -font="-Gohu-GohuFont-Medium-R-Normal--11-80-100-100-C-60-ISO10646-1" -TODAY=$(expr `date +'%d'` + 0) -MONTH=`date +'%m'` -YEAR=`date +'%Y'` -LINES=$(cal -m | wc -l) -LINES=$((LINES + 2)) - -( -date +'^bg(#111111) ' -date +'' -# current month, highlight header and today -cal -m | sed -r -e "1,2 s/.*/^fg(#d3d3d3)&^fg()/" -e "s/(^| )($TODAY)($| )/\1^bg(#6A8C8C)^fg(#111111)\2^fg()^bg()\3/") | dzen2 -x 0 -y 16 -w 146 -h 12 -l $LINES -sa c -p -e 'onstart=uncollapse,hide;button1=exit;' -fg "#d3d3d3" -tw 6 -fn "$font" -) diff --git a/herbstluftwm/bin/herbstluftwm-add-gap b/herbstluftwm/bin/herbstluftwm-add-gap deleted file mode 100755 index cc5492c..0000000 --- a/herbstluftwm/bin/herbstluftwm-add-gap +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -filename="/tmp/herbstluftwm-gap" -while read -r line -do - gap=$line - if [ "$gap" -le 90 ] - then - gap=$((gap+7)) - herbstclient set window_gap $gap - echo $gap > $filename - fi -done < "$filename" diff --git a/herbstluftwm/bin/herbstluftwm-remove-gap b/herbstluftwm/bin/herbstluftwm-remove-gap deleted file mode 100755 index b30b3eb..0000000 --- a/herbstluftwm/bin/herbstluftwm-remove-gap +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -filename="/tmp/herbstluftwm-gap" -while read -r line -do - gap=$line - if [ "$gap" -ge 7 ] - then - gap=$((gap-7)) - herbstclient set window_gap $gap - echo $gap > $filename - fi -done < "$filename" diff --git a/irssi/.irssi/config b/irssi/.irssi/config deleted file mode 100644 index 9ef1531..0000000 --- a/irssi/.irssi/config +++ /dev/null @@ -1,78 +0,0 @@ -# ██ ██ -# ░░ ░░ -# ██ ██████ ██████ ██████ ██ -# ░██░░██░░█ ██░░░░ ██░░░░ ░██ -# ░██ ░██ ░ ░░█████ ░░█████ ░██ -# ░██ ░██ ░░░░░██ ░░░░░██░██ -# ░██░███ ██████ ██████ ░██ -# ░░ ░░░ ░░░░░░ ░░░░░░ ░░ -# -# ▓▓▓▓▓▓▓▓▓▓ -# ░▓ author ▓ xero <x@xero.nu> -# ░▓ code ▓ http://code.xero.nu/dotfiles -# ░▓ mirror ▓ http://git.io/.files -# ░▓▓▓▓▓▓▓▓▓▓ -# ░░░░░░░░░░ - -utf8 = "on"; - -servers = ( - { - address = "unix.chat"; - chatnet = "unixchat"; - port = "6697"; - use_ssl = "yes"; - ssl_verify = "yes"; - ssl_capath = "/etc/ssl/certs/"; - autoconnect = "yes"; - } -); - -chatnets = { unixchat = { type = "IRC"; nick = "neongold"; }; }; - -channels = ( - { name = "#unix"; chatnet = "unixchat"; autojoin = "Yes"; } -); - -aliases = { - emote = "exec -o emote"; - ascii = "exec -o toilet -f future --irc"; - rusto = "exec -o toilet -f rusto --irc"; - rustofat = "exec -o toilet -f rustofat --irc"; - gay = "exec -o toilet -f term --gay --irc"; - toilet = "exec -o toilet"; - ns = "msg nickserv"; - cs = "msg chanserv"; -}; - -settings = { - core = { real_name = "neongold"; user_name = "neongold"; nick = "neongold"; }; - "fe-text" = { - actlist_sort = "refnum"; - term_force_colors = "yes"; - indent = "12"; - }; - "fe-common/core" = { - theme = "neongold.theme"; - bell_beeps = "no"; - autolog_path = "/var/logs/irc/$tag/$0.log"; - autolog = "yes"; - }; -}; -logs = { }; -statusbar = { - default = { - window = { - items = { - barstart = { priority = "100"; }; - user = { }; - window = { }; - window_empty = { }; - lag = { priority = "-1"; }; - act = { priority = "10"; }; - more = { priority = "-1"; alignment = "right"; }; - barend = { priority = "100"; alignment = "right"; }; - }; - }; - }; -}; diff --git a/irssi/.irssi/fro.theme b/irssi/.irssi/fro.theme deleted file mode 100644 index 4ce5b81..0000000 --- a/irssi/.irssi/fro.theme +++ /dev/null @@ -1,209 +0,0 @@ -# -# -default_color = "-1"; - -info_eol = "false"; - -replaces = { "[]" = "%K$*%n"; }; - -abstracts = { - - indent_default = ""; - - line_start = ""; - - timestamp = ""; - - hilight = "%_$*%_"; - - error = "%R$*%n"; - - channel = "%K$*%n"; - - nick = "%_$*%_"; - - nickhost = "%g$*"; - - server = "%_$*%_"; - - comment = "%n(%K$*%n)"; - - reason = "{comment $*}"; - - mode = "{comment $*}"; - - channick_hilight = "%g$*%N"; - chanhost_hilight = "{nickhost $*}"; - - channick = "$*"; - chanhost = "{nickhost $*}"; - - channelhilight = "%g$*%n"; - - ban = "$*"; - - #msgnick = "%K%N$1 %K %|%N"; - msgnick = "%K<$0%w$1-%K>%n %|"; - #ownmsgnick = "{msgnick $0 $1}"; - #ownmsgnick = "{msgnick $0 $1-}"; - ownnick = "%W$*%n"; - #ownnick = "%K<$*%K>%n"; - - #pubmsgnick = "{msgnick $0 $1}"; - #pubmsgnick = "{msgnick $0 $1-}"; - pubnick = "%N$*%n"; - - #pubmsghinick = "{msgnick $0 $1}%r"; - #menick = "%R$*%n"; - - #msgchannel = "%m$*%n"; - #privmsg = "$0=%b\"$1-\"%n "; - - #ownprivmsg = "$0=%b\"$1-\"%n "; - - #privmsgnick = " %g<%N "; - - #ownprivmsgnick = " %r>%N "; - - action_core = "%c—%C—%K┄%K %n$*"; - - #action = "{action_core $*} "; - - #ownaction = "{action %p$*}"; - - #ownaction_target = "{action_core $0}%Y:%c$1%n "; - - #pvtaction = "%y (*) $*%n "; - #pvtaction_query = "{action $* }"; - - #pubaction = "{action $*}"; - - whois = "%K │ %n$1-"; - - ownnotice = "%NNote n = %Mnew%n $0 ($1-) "; - notice = "%M$*%n "; - pubnotice_channel = " %N($*)"; - pvtnotice_host = " %N($*)"; - servernotice = " %N($*)"; - - ownctcp = "%N$0 (%K$1-%N) "; - ctcp = "%N$*%n"; - - wallop = "%K$*%n: "; - wallop_nick = "%n$*"; - wallop_action = "%K * $*%n "; - - #netsplit = "%K$*%n"; - #netjoin = "%K$*%n"; - - names_users = "%c┌%C—%K┄ %nusers in $1"; - names_nick = "$2$0%n$1 "; - names_nick_op = "{names_nick $* %K}"; - names_nick_halfop = "{names_nick $* %K}"; - names_nick_voice = "{names_nick $* %K}"; - names_prefix = "%c│ %n$1"; - names_channel = "%W$*%n"; - - dcc = "%g$*%n"; - dccfile = "%_$*%_"; - - dccownmsg = "%g /* $0 ($1-) */"; - dccownnick = "$*%n"; - dccownquerynick = "$*%n"; - dccownaction = "{action $*}"; - dccownaction_target = "{action $*}"; - - dccmsg = "%g/* $1- ($0) */"; - dccquerynick = "%g$*%n"; - dccaction = "{action $*}"; - - sb_background = "%N%N"; - - sb_prompt_bg = "%n"; - - sbstart = "%c┌%C—%K┄ "; - sbend = ""; - - topicsbstart = "%BChannel: %b\"$*"; - topicsbend = "$*%b\""; - - prompt = "%c└%C—%K┄ %n"; - #prompt = "%c│%n "; - - sb = "%N$*%N "; - #sb = ""; - sbmode = "%c(%K+%N$*%c)%n"; - sbaway = "%c(%Naway%c)%N"; - sbservertag = "%c:%N$0%c(%N^X%c)"; - #sbservertag = ""; - sbnickmode = "%K$0%N$1"; - - #sb_usercount = "{sb %_$0%_ nicks ($1-)}"; - #sb_uc_ircops = "%_*%_$*"; - #sb_uc_ops = "%_@%r$*%n"; - #sb_uc_halfops = "%_%%%g$*%n"; - #sb_uc_voices = "%_+%y$*%n"; - #sb_uc_normal = "%w$*%n"; - #sb_uc_space = " "; - - #sb_act_sep = "%c$*"; - #sb_act_text = "%N$*"; - #sb_act_msg = "%c$*"; - #sb_act_hilight = "%R%9$*%n"; - #sb_act_hilight_color = "%R%9$1-%n"; -}; - -formats = { - "fe-common/core" = { - #line_start = "{line_start}"; - line_start_irssi = "{line_start}"; - - join = "%c—%C—%K┄%K %n{channick $0} %K(%n{nickhost %w$1}%K)%n joined %K$2"; - part = "%c—%C—%K┄%K %n{channick $0} %K(%n{nickhost %w$1}%K)%n left %K$2 {reason %C$3}"; - quit = "%c—%C—%K┄%K %nsignoff%K: %n{channick $0}%K {reason %C$2}"; - kick = "%c—%C—%K┄%K %n{channick $0} was kicked by $2 %K{reason %C$3}"; - nick_changed = "%c—%C—%K┄%K %n{channick $0} %Kis now known as %W{channick $1}"; - your_nick_changed = "%c—%C—%K┄%K %nyou %Kare now known as %W{channick $1}"; - #pubmsg = "{pubmsgnick $2 {pubnick \00312$[-9]0}}$1"; - #own_msg = "{ownmsgnick $2 {ownnick $[-9]0}}$1"; - #own_msg_channel = "{ownmsgnick $3 {ownnick $[-9]0}{msgchannel $1}}$2"; - #own_msg_private_query = "{ownprivmsgnick {ownprivnick $[-11]2}}$1"; - #pubmsg_me = "{pubmsghinick $2 {menick $[-9]0}}$1"; - #pubmsg_me_channel = "{pubmsghinick $3 {menick $[-9]0}{msgchannel $1}}$2"; - #pubmsg_hilight = "{pubmsghinick $3 {menick $[-9]1}}$2"; - #pubmsg_hilight_channel = "{pubmsghinick $0 $[-9]1$4{msgchannel $2}}$3"; - #pubmsg_channel = "{pubmsgnick {pubnick %G$[-9]0}$2}$1"; - #msg_private_query = "{privmsgnick $[-9]0}$2"; - new_topic = "%c—%C—%K┄ %wtopic %K'%W$2%K' %Nset by $0"; - endofnames = "%c└%C—%K┄ %wtotal: {hilight $2} ops, {hilight $3} halfops, {hilight $4} voices, {hilight $5} normal%n"; - #pubmsg = "{pubmsgnick $2 {pubnick \00304$[-9]0}}$1"; - }; - "fe-common/irc" = { - chanmode_change = "%c—%C—%K┄%n mode %K(%W{channick $1}%K) %nby %W$2"; - server_chanmode_change = "%c—%C—%K┄%K%n {channick $1} %n(%K$2%n)"; - whois = "%c┌%C—%K┄ %n\012%c│ %Ku%Cser %n$0 %K(%n$1%c@%n$2%K) %n\012%c│ %Kn%Came %n$3%n"; - whois_idle = "%c│ %Ki%Cdle%n %|$1d $2h $3m $4s"; - whois_idle_signon = "%c│ %Ki%Cdle%n %|$1d $2h $3m $4s {comment signon: $5}"; - whois_server = "%c│ %Ks%Cerv%n %|$1 {comment $2}"; - whois_oper = "%c│ %Ko%Cper%n {hilight $1}"; - whois_registered = "%c│ %Kr%Cgis%n yes"; - whois_help = "%c│ %Kh%Celp%n available for help"; - whois_modes = "%c│ %Km%Code%n $1"; - whois_realhost = "%c│ %Kr%Ceal%n $1-"; - whois_usermode = "%c│ %Ku%Cmod%n $1"; - whois_channels = "%c│ %Kc%Chan%n %|$1"; - whois_away = "%c│ %Ka%Cway%n %|$1"; - whois_special = "%c│ %Ki%Cnfo%n {comment %|$1}"; - whois_extra = "%c│ %Ke%Cxtr%n %|$1"; - end_of_whois = "%c└%C—%K┄ "; - whois_not_found = "%c—%C—%K┄ there is no such nick $0"; - topic = "%c—%C—%K┄ %Ntopic for %K$0 %W$1"; - topic_info = "%c—%C—%K┄ %Nset by $0 %N(%K$1%N)"; - #own_action = "{ownaction $[-9]0} $1"; - #action_private = "{pvtaction $[-9]0}$1"; - #action_private_query = "{pvtaction_query $[-9]0} $2"; - #action_public = "{pubaction $[-9]0}$1"; - channel_synced = "%c—%C—%K┄ %nsynced in {hilight $1} secs"; - channel_created = "%c—%C—%K┄ %ncreated $1"; - }; -}; diff --git a/irssi/.irssi/neongold.theme b/irssi/.irssi/neongold.theme deleted file mode 100644 index 3249170..0000000 --- a/irssi/.irssi/neongold.theme +++ /dev/null @@ -1,206 +0,0 @@ -# -# ███████ █████ ██████ ███████ -# ░░██░░░██ ██░░░██ ██░░░░██░░██░░░██ -# ░██ ░██░███████░██ ░██ ░██ ░██ -# ░██ ░██░██░░░░ ░██ ░██ ░██ ░██ -# ███ ░██░░██████░░██████ ███ ░██ -# ░░░ ░░ ░░░░░░ ░░░░░░ ░░░ ░░ -# -# ██ ██ -# ░██ ░██ -# █████ ██████ ░██ ░██ -# ██░░░██ ██░░░░██ ░██ ██████ -# ░██ ░██░██ ░██ ░██ ██░░░██ -# ░░██████░██ ░██ ░██░██ ░██ -# ░░░░░██░░██████ ███░░██████ -# █████ ░░░░░░ ░░░ ░░░░░░ -# ░░░░░ -# -# ▓▓▓▓▓▓▓▓▓▓ -# ░▓ author ▓ xero <x@xero.nu> -# ░▓ code ▓ http://code.xero.nu/dotfiles -# ░▓ mirror ▓ http://git.io/.files -# ░▓▓▓▓▓▓▓▓▓▓ -# ░░░░░░░░░░ -# -default_color = "-1"; - -info_eol = "false"; - -replaces = { "[]" = "%w$*%n"; }; - -abstracts = { - - indent_default = " + %Y│%n "; - line_start = ""; - timestamp = ""; - hilight = "%_$*%_"; - error = "%r$*%n"; - channel = "%w$*%n"; - nick = "%_$*%_"; - nickhost = "%g$*"; - server = "%_$*%_"; - comment = "%n(%w$*%n)"; - reason = "{comment $*}"; - mode = "{comment $*}"; - - channick_hilight = "%g$*%N"; - chanhost_hilight = "{nickhost $*}"; - - channick = "$*"; - chanhost = "{nickhost $*}"; - - channelhilight = "%g$*%n"; - - ban = "$*"; - - msgnick = "%Y$0%w$1 %Y│ %N"; - ownmsgnick = "%Y$0%w$1 %Y│ "; - ownnick = "%W$*%n"; - pubnick = "%N$*%n"; - menick = "%y$*%y"; - - # generic one that's used by most actions - action = "%b$* %Y│%b"; - - # own action, both private/public - ownaction = "%b$* %Y│%b"; - - # own action with target, both private/public - ownaction_target = "{action $*}"; - - # private action sent by others - pvtaction = "{action $*}"; - pvtaction_query = "{action $*}"; - - # public action sent by others - pubaction = "{action $*}"; - - whois = "%w │ %n$1-"; - - ownnotice = "%NNote n = %Mnew%n $0 ($1-) "; - notice = "%M$*%n "; - pubnotice_channel = " %N($*)"; - pvtnotice_host = " %N($*)"; - servernotice = " %N($*)"; - - ownctcp = "%N$0 (%w$1-%N) "; - ctcp = "%N$*%n"; - - wallop = "%w$*%n: "; - wallop_nick = "%n$*"; - wallop_action = "%w * $*%n "; - - #netsplit = "%w$*%n"; - #netjoin = "%w$*%n"; - - names_users = "%Y┌─┄┄─┄┄──┘ %nusers in %b$1"; - names_nick = "$2$0%n$1 "; - names_nick_op = "{names_nick $* %w}"; - names_nick_halfop = "{names_nick $* %w}"; - names_nick_voice = "{names_nick $* %w}"; - names_prefix = "%Y│ %n$1"; - names_channel = "%W$*%n"; - - dcc = "%g$*%n"; - dccfile = "%_$*%_"; - - dccownmsg = "%g /* $0 ($1-) */"; - dccownnick = "$*%n"; - dccownquerynick = "$*%n"; - dccownaction = "{action $*}"; - dccownaction_target = "{action $*}"; - - dccmsg = "%g/* $1- ($0) */"; - dccquerynick = "%g$*%n"; - dccaction = "{action $*}"; - - sb_background = "%N%N"; - - sb_prompt_bg = "%n"; - - sbstart = " %Y┌─┄┄─────┘ %w"; - sbend = ""; - - topicsbstart = "%w$C %Y┄─┄$*"; - topicsbend = "$*"; - - prompt = " %Y└──┄┄%n "; - - sb = "%N$*%N "; - #sb = ""; - sbmode = "%b(%w+%N$*%b)%n"; - sbaway = "%b(%Naway%b)%N"; - sbservertag = "%b:%N$0%b(%N^X%b)"; - #sbservertag = ""; - sbnickmode = "%w$0%N$1"; - - #sb_usercount = "{sb %_$0%_ nicks ($1-)}"; - #sb_uc_ircops = "%_*%_$*"; - #sb_uc_ops = "%_@%r$*%n"; - #sb_uc_halfops = "%_%%%g$*%n"; - #sb_uc_voices = "%_+%y$*%n"; - #sb_uc_normal = "%w$*%n"; - #sb_uc_space = " "; - - #sb_act_sep = "%b$*"; - #sb_act_text = "%N$*"; - #sb_act_msg = "%b$*"; - #sb_act_hilight = "%R%9$*%n"; - #sb_act_hilight_color = "%R%9$1-%n"; -}; - -formats = { - "fe-common/core" = { - #line_start = "{line_start}"; - line_start_irssi = "{line_start}"; - join = "%n join %Y┄┄─┤ %n{channick $0} %w(%n{nickhost %w$1}%w)%n joined %w$2"; - part = "%n part %Y┄┄─┤ %n{channick $0} %w(%n{nickhost %w$1}%w)%n left %w$2 {reason %b$3}"; - quit = "%n quit %Y┄┄─┤ %nsignoff%w: %n{channick $0}%w {reason %b$2}"; - kick = "%r kick %Y┄┄─┤ %n{channick $0} was kicked by $2 %w{reason %b$3}"; - nick_changed = " %Y┄┼┄%w %n{channick $0} %Y>> %W{channick $1}"; - your_nick_changed = " %Y┄┼┄%w %n{channick $0} %Y>> %W{channick $1}"; - new_topic = "%Y┌─┄┄─────┘%n\n%Y│ %wtopic %b'$2' %Nset by%b $0\n%Y└─┄┄─┄┄──┐ "; - endofnames = "%Y└─┄┄─┄┄──┐ %btotal: {hilight $2} ops, {hilight $3} halfops, {hilight $4} voices, {hilight $5} normies%n"; - #nick padding - pubmsg = "{pubmsgnick $2 {pubnick \00312$[-7]0}}$1"; - own_msg = "{ownmsgnick $2 {ownnick $[-7]0}}$1"; - own_msg_channel = "{ownmsgnick $3 {ownnick $[-7]0}{msgchannel $1}}$2"; - own_msg_private_query = "{ownprivmsgnick {ownprivnick $[-7]2}}$1"; - pubmsg_me = "{pubmsghinick $[-7]0 {menick $2}}%y$1"; - pubmsg_me_channel = "{pubmsghinick $3 {menick $[-7]0}{msgchannel $1}}$2"; - pubmsg_hilight_channel = "{pubmsghinick $0 $[-7]1$4{msgchannel $2}}$3"; - pubmsg_hilight = "{pubmsghinick $3 {menick $[-7]1}}$2"; - pubmsg_channel = "{pubmsgnick {pubnick %G$[-7]0}$2}$1"; - msg_private_query = "{privmsgnick $[-7]0}$2"; - }; - "fe-common/irc" = { - chanmode_change = "%n mode %Y┄┄─┤ %w(%B{channick $1}%w) %nby %B$2"; - server_chanmode_change = "%n mode %Y┄┄─┤ %w{channick $1} %n(%w$2%n)"; - whois = "%Y┌─┄┄ %n\012%Y│ %wuser %b$0 %w(%n$1%b@%n$2%w) %n\012%Y│ %wname %n$3%n"; - whois_idle = "%Y│ %widle%b %|$1d $2h $3m $4s"; - whois_idle_signon = "%Y│ %widle%b %|$1d $2h $3m $4s {comment signon: $5}"; - whois_server = "%Y│ %wserv%b %|$1 {comment $2}"; - whois_oper = "%Y│ %woper%b {hilight $1}"; - whois_registered = "%Y│ %wrgis%n yes"; - whois_help = "%Y│ %whelp%b available for help"; - whois_modes = "%Y│ %wmode%b $1"; - whois_realhost = "%Y│ %wreal%b $1-"; - whois_usermode = "%Y│ %wumod%b $1"; - whois_channels = "%Y│ %wchan%b %|$1"; - whois_away = "%Y│ %waway%b %|$1"; - whois_special = "%Y│ %winfo%b {comment %|$1}"; - whois_extra = "%Y│ %wextr%b %|$1"; - end_of_whois = "%Y└─┄┄ "; - whois_not_found = "%Y──┄┄ %wthere is no such nick %b$0"; - topic = "%ntopic %Y┄┄─┤ %B$0 %b$1"; - topic_info = " %Y┄┄─┤ %wset by %b$0 %B(%w$1%B)"; - channel_synced = "%n sync %Y┄┄─┤ %nin {hilight $1} secs"; - channel_created = "%n %Y┄┄─┤ %ncreated $1"; - action_core = "%b$[-8]0 %Y│ %b$1"; - own_action = "{ownaction $[-8]0} $1"; - action_private = "{pvtaction $[-8]0}$1"; - action_private_query = "{pvtaction_query $[-8} $2"; - action_public = "{pubaction $[-8]0}$1"; - }; -}; diff --git a/irssi/.irssi/nixers.theme b/irssi/.irssi/nixers.theme deleted file mode 100644 index 477eca5..0000000 --- a/irssi/.irssi/nixers.theme +++ /dev/null @@ -1,304 +0,0 @@ -# ██ ██ -# ░░ ░░ -# ██ ██████ ██████ ██████ ██ -# ░██░░██░░█ ██░░░░ ██░░░░ ░██ -# ░██ ░██ ░ ░░█████ ░░█████ ░██ -# ░██ ░██ ░░░░░██ ░░░░░██░██ -# ░██░███ ██████ ██████ ░██ -# ░░ ░░░ ░░░░░░ ░░░░░░ ░░ -# -# ▓▓▓▓▓▓▓▓▓▓ -# ░▓ author ▓ xero <x@xero.nu> -# ░▓ code ▓ http://code.xero.nu/dotfiles -# ░▓ mirror ▓ http://git.io/.files -# ░▓▓▓▓▓▓▓▓▓▓ -# ░░░░░░░░░░ -# -# default foreground color (%N) - -1 is the "default terminal color" -default_color = "-1"; - -# print timestamp/servertag at the end of line, not at beginning -info_eol = "false"; - -# these characters are automatically replaced with specified color -# (dark grey by default) -replaces = { "[]" = "%b$*%n"; }; - -abstracts = { - - ############# generic ############################### - - indent_default = " + "; - - # text to insert at the beginning of each non-message line - # line_start = "%g//%n "; - line_start = ""; - - # timestamp styling, nothing by default - timestamp = "%Z5F5F5F$0-%n"; - - # any kind of text that needs hilighting, default is to bold - hilight = "%_$*%_"; - - # any kind of error message, default is bright red - error = "%R$*%n"; - - # channel name is printed - channel = "%b$*%n"; - - # nick is printed - nick = "%_$*%_"; - - # nick host is printed - nickhost = "%g$*"; - - # server name is printed - server = "%_$*%_"; - - # some kind of comment is printed - comment = "%n(%b$*%n);"; - - # reason for something is printed (part, quit, kick, ..) - reason = "{comment $*}"; - - # mode change is printed ([+o nick]) - mode = "{comment $*}"; - - ## channel specific messages - - # highlighted nick/host is printed (joins) - channick_hilight = "%g$*%N"; - chanhost_hilight = "{nickhost $*}"; - - # nick/host is printed (parts, quits, etc.) - channick = "$*"; - chanhost = "{nickhost $*}"; - - # highlighted channel name is printed - channelhilight = "%g$*%n"; - - # ban/ban exception/invite list mask is printed - ban = "$*"; - - action_core = "%Z5F5F5F─┄┄ %n$*"; - - ########### messages ################################# - - # the basic styling of how to print message, $0 = nick mode, $1 = nick - msgnick = "%Z5F5F5F$0%N $1 │ %|%N"; - - # $0 = nick mode, $1 = nick - ownmsgnick = "{msgnick $0 $1}"; - ownnick = "%Z6A8C8C$*%n"; - - # public message in channel, $0 = nick mode, $1 = nick - pubmsgnick = "{msgnick $0 $1}"; - pubnick = "%N$*%n"; - - # public highlighted message in channel - pubmsghinick = "{msgnick $0 $1}%y"; - menick = "%y$*%n"; - - # channel name is printed with message - msgchannel = "%Z5F5F5F:%m$*%n"; - - # private message, $0 = nick, $1 = host - privmsg = "$0=%b\"$1-\"%n "; - - # private message from you, $0 = "msg", $1 = target nick - ownprivmsg = "$0=%b\"$1-\"%n "; - - # private message in query - privmsgnick = "%g<%N %|"; - - # own private message in query - ownprivmsgnick = "%r>%N %|"; - - - ########## Actions (/ME stuff) ######################### - - # generic one that's used by most actions - action = " %m$* %M* %m%|"; - - # own action, both private/public - ownaction = " %m$* %M*%N%m"; - - # own action with target, both private/public - ownaction_target = "{action $*}"; - - # private action sent by others - pvtaction = "{action $*}"; - pvtaction_query = "{action $*}"; - - # public action sent by others - pubaction = "{action $*}"; - - - ########## other IRC events ############################# - - # whois - whois = "%# $[8]0 = $1-;"; - - # notices - ownnotice = "%NNote n = %Mnew%n $0 ($1-) "; - notice = "%M$*%n "; - pubnotice_channel = " %N($*)"; - pvtnotice_host = " %N($*)"; - servernotice = " %N($*)"; - - # CTCPs - ownctcp = "%NCTCP c = %Mnew%n $0 ($1-) "; - ctcp = "%N$*%n"; - - # wallops - wallop = "%Z5F5F5F$*%n: "; - wallop_nick = "%n$*"; - wallop_action = "%Z5F5F5F * $*%n "; - - # netsplits - netsplit = " %Z5F5F5Fnsplit %R< %b\"$*\"%n"; - netjoin = " %Z5F5F5Fnjoin %G> %b\"$*\"%n"; - - # /names list - #names_prefix = "%Z5F5F5F░▒▓ "; - names_users = "%Z5F5F5F┌┄┄ users in $1 "; - names_nick = "%_$2$0%_%n$1- "; - names_nick_op = "{names_nick $* %R}"; - names_nick_halfop = "{names_nick $* %C}"; - names_nick_voice = "{names_nick $* %Z5F5F5F}"; - #names_users = "%Z5F5F5F░▒▓ %n$1"; - names_prefix = "%Z5F5F5F│ %n$1"; - names_channel = "%b$*%n"; - - # DCC - dcc = "%g$*%n"; - dccfile = "%_$*%_"; - - # DCC chat, own msg/action - dccownmsg = "%g /* $0 ($1-) */"; - dccownnick = "$*%n"; - dccownquerynick = "$*%n"; - dccownaction = "{action $*}"; - dccownaction_target = "{action $*}"; - - # DCC chat, others - dccmsg = "%g/* $1- ($0) */"; - dccquerynick = "%g$*%n"; - dccaction = "{action $*}"; - - ######## statusbar/topicbar ############################ - - # default background for all statusbars. You can also give - # the default foreground color for statusbar items. - sb_background = "%z303030"; - - # background for prompt / input line - sb_prompt_bg = "%n"; - - # text at the beginning of statusbars. - sbstart = "%k▓▒░ "; - # text at the end of statusbars. - sbend = "%k░▒▓"; - - topicsbstart = "%k▓▒░$*"; - topicsbend = "$*%b%k░▒▓"; - - prompt = " %y$* »%n "; - - sb = " $* "; - sbmode = " %Z5F5F5F░ %g%g+%n$* %Z5F5F5F░"; - sbaway = " %g/* zZzZ */%n"; - sbservertag = ":%g$0%n"; - sbnickmode = "$0"; - - # Usercount - sb_usercount = "{sb %_$0%_ nicks ($1-)}"; - sb_uc_ircops = "%_*%_$*"; - sb_uc_ops = "%_@%r$*%n"; - sb_uc_halfops = "%_%%%g$*%n"; - sb_uc_voices = "%_+%y$*%n"; - sb_uc_normal = "%w$*%n"; - sb_uc_space = " "; - # activity in statusbar - - # ',' separator - sb_act_sep = " "; - # normal text - sb_act_text = "%Z5F5F5F%9$*%n"; - # public message - sb_act_msg = "%Y%9$*%n"; - # hilight - sb_act_hilight = "%R%9$*%n"; - # hilight with specified color, $0 = color, $1 = text - sb_act_hilight_color = "%R%9$1-%n"; -}; - -######################################################## - -formats = { - "fe-common/core" = { - line_start = "{line_start}"; - line_start_irssi = "{line_start}"; - - join = "%G>%Z5F5F5F> join %g>%n {channick $0} %Z303030({nickhost %Z5F5F5F$1}%Z303030)%n"; - part = "%R<%Z5F5F5F< part %r<%n {channick $0} %Z303030({nickhost %Z5F5F5F$1}%Z303030)%n"; - kick = "%R<%Z5F5F5F< kicked %r<%n {channick $0} %Z303030({nickhost %Z5F5F5F$1}%Z303030)%n"; - quit = "%R<%Z5F5F5F< quit %r<%n {channick $0} %Z303030({nickhost %Z5F5F5F$1}%Z303030)%n"; - quit_once = "{channel $3} {channick $0} {chanhost $1} %kquit {reason %C$2}"; - - nick_changed = "%Z5F5F5F{channick $[-13]0} %G>%n {channick $1}"; - your_nick_changed = "%Z5F5F5F you %G>%n {channick $1}"; - - pubmsg = "{pubmsgnick $2 {pubnick \00313$[-11]0}}$1"; - - own_msg = "{ownmsgnick $2 {ownnick $[-11]0}}$1"; - own_msg_channel = "{ownmsgnick $3 {ownnick $[-11]0}{msgchannel $1}}$2"; - own_msg_private_query = "{ownprivmsgnick {ownprivnick $[-11]2}}$1"; - - pubmsg_me = "{pubmsghinick $2 {menick $[-11]0}}$1"; - pubmsg_me_channel = "{pubmsghinick $3 {menick $[-11]0}{msgchannel $1}}$2"; - - pubmsg_hilight = "{pubmsghinick $3 {menick $[-11]1}}$2"; - pubmsg_hilight_channel = "{pubmsghinick $0 $[-11]1$4{msgchannel $2}}$3"; - - pubmsg_channel = "{pubmsgnick {pubnick %G$[-11]0}$2}$1"; - msg_private_query = "{privmsgnick $[-11]0}$2"; - new_topic = " %ctopic %Z5F5F5F= %|%B'$2' %non %b$1%n%Z5F5F5F[set by {nick %y$0}]"; - - #endofnames = "%Z5F5F5F░▒▓ %mtotal: {hilight $2} ops, {hilight $3} halfops, {hilight $4} voices, {hilight $5} normal%n"; - endofnames = "%Z5F5F5F└┄┄ %mtotal: {hilight $2} ops, {hilight $3} halfops, {hilight $4} voices, {hilight $5} normal%n"; - }; - "fe-common/irc" = { - chanmode_change = "%Z5F5F5F─┄┄ %n mode %y!%n {channick $1}"; - server_chanmode_change = "%Z5F5F5F─┄┄ %n mode %y!%n {channick $1}"; - - whois = "%Z5F5F5F┌┄┄ %n\012%c%Z5F5F5F│ user %n$0 (%n$1%c@%n$2) %n\012%c%Z5F5F5F│ name %n$3%n"; - whois_idle = "%Z5F5F5F│ idle%n %│$1d $2h $3m $4s"; - whois_idle_signon = "%Z5F5F5F│ idle%n %|$1d $2h $3m $4s {comment signon: $5}"; - whois_server = "%Z5F5F5F│ serv%n %|$1 {comment $2}"; - whois_oper = "%Z5F5F5F│ oper%n {hilight $1}"; - whois_registered = "%Z5F5F5F│ rgis%n yes"; - whois_help = "%Z5F5F5F│ help%n available for help"; - whois_modes = "%Z5F5F5F│ mode%n $1"; - whois_realhost = "%Z5F5F5F│ real%n $1-"; - whois_usermode = "%Z5F5F5F│ umod%n $1"; - whois_channels = "%Z5F5F5F│ chan%n %|$1"; - whois_away = "%Z5F5F5F│ away%n %|$1"; - whois_special = "%Z5F5F5F│ info%n {comment %|$1}"; - whois_extra = "%Z5F5F5F│ extr%n %|$1"; - end_of_whois = "%Z5F5F5F└┄┄ "; - whois_not_found = "%Z5F5F5F─┄┄ %nthere is no such nick $0"; - - own_action = "{ownaction $[-11]0} $1"; - action_private = "{pvtaction $[-11]0}$1"; - action_private_query = "{pvtaction_query $[-11]0} $2"; - action_public = "{pubaction $[-11]0}$1"; - }; - "Irssi::Script::ichat" = { - ichat_timestamp = "%Y>%Z5F5F5F> $1 %y>%n"; - }; -}; -settings = { - core = { real_name = "Unknown"; user_name = "xero"; nick = "xero"; }; - "fe-text" = { actlist_sort = "refnum"; }; -}; diff --git a/mc/.config/mc/ini b/mc/.config/mc/ini deleted file mode 100644 index 8e00a34..0000000 --- a/mc/.config/mc/ini +++ /dev/null @@ -1,162 +0,0 @@ -# ██████████ █████ -# ░░██░░██░░██ ██░░░██ -# ░██ ░██ ░██░██ ░░ -# ░██ ░██ ░██░██ ██ -# ███ ░██ ░██░░█████ -# ░░░ ░░ ░░ ░░░░░ -# -# ▓▓▓▓▓▓▓▓▓▓ -# ░▓ author ▓ xero <x@xero.nu> -# ░▓ code ▓ http://code.xero.nu/dotfiles -# ░▓ mirror ▓ http://github.com/xero/dotfiles -# ░▓▓▓▓▓▓▓▓▓▓ -# ░░░░░░░░░░ -# - -[Midnight-Commander] -verbose=1 -pause_after_run=1 -shell_patterns=1 -auto_save_setup=1 -preallocate_space=0 -auto_menu=0 -use_internal_view=1 -use_internal_edit=0 -clear_before_exec=1 -confirm_delete=1 -confirm_overwrite=1 -confirm_execute=0 -confirm_history_cleanup=1 -confirm_exit=1 -confirm_directory_hotlist_delete=1 -safe_delete=0 -mouse_repeat_rate=100 -double_click_speed=250 -use_8th_bit_as_meta=0 -confirm_view_dir=0 -mouse_move_pages_viewer=1 -mouse_close_dialog=0 -fast_refresh=0 -drop_menus=0 -wrap_mode=1 -old_esc_mode=0 -old_esc_mode_timeout=1000000 -cd_symlinks=1 -show_all_if_ambiguous=0 -max_dirt_limit=10 -use_file_to_guess_type=1 -alternate_plus_minus=0 -only_leading_plus_minus=1 -show_output_starts_shell=0 -xtree_mode=0 -num_history_items_recorded=60 -file_op_compute_totals=1 -classic_progressbar=1 -vfs_timeout=60 -ftpfs_directory_timeout=900 -use_netrc=1 -ftpfs_retry_seconds=30 -ftpfs_always_use_proxy=0 -ftpfs_use_passive_connections=1 -ftpfs_use_passive_connections_over_proxy=0 -ftpfs_use_unix_list_options=1 -ftpfs_first_cd_then_ls=1 -fish_directory_timeout=900 -editor_tab_spacing=8 -editor_word_wrap_line_length=72 -editor_fill_tabs_with_spaces=0 -editor_return_does_auto_indent=0 -editor_backspace_through_tabs=0 -editor_fake_half_tabs=1 -editor_option_save_mode=0 -editor_option_save_position=1 -editor_option_auto_para_formatting=0 -editor_option_typewriter_wrap=0 -editor_edit_confirm_save=1 -editor_syntax_highlighting=1 -editor_persistent_selections=1 -editor_cursor_beyond_eol=0 -editor_visible_tabs=1 -editor_visible_spaces=1 -editor_line_state=0 -editor_simple_statusbar=0 -editor_check_new_line=0 -editor_show_right_margin=0 -editor_group_undo=0 -nice_rotating_dash=1 -mcview_remember_file_position=0 -auto_fill_mkdir_name=1 -copymove_persistent_attr=1 -select_flags=6 -editor_backup_extension=~ -mcview_eof= -ignore_ftp_chattr_errors=true -keymap=mc.keymap -skin=default - -editor_drop_selection_on_copy=1 -editor_cursor_after_inserted_block=0 -editor_ask_filename_before_edit=0 -editor_filesize_threshold=64M -editor_stop_format_chars=-+*\\,.;:&> - -[Layout] -message_visible=0 -keybar_visible=1 -xterm_title=0 -output_lines=0 -command_prompt=0 -menubar_visible=1 -free_space=1 -horizontal_split=0 -vertical_equal=1 -left_panel_size=45 -horizontal_equal=1 -top_panel_size=1 - -[Misc] -timeformat_recent=%b %e %H:%M -timeformat_old=%b %e %Y -ftp_proxy_host=gate -ftpfs_password=anonymous@ -display_codepage=UTF-8 -source_codepage=Other_8_bit -autodetect_codeset= -clipboard_store= -clipboard_paste= - -[Colors] -#base_color=linux:normal=white,black:marked=yellow,black:input=,green:menu=black:menusel=white:menuhot=red,:menuhotsel=black,red:dfocus=white,black:dhotnormal=white,black:dhotfocus=white,black:executable=,black:directory=white,black:link=white,black:device=white,black:special=white,black:core=,black:stalelink=red,black:editnormal=white,black -base_color=normal=gray,default:selected=black,cyan:marked=cyan,black:markselect=cyan,blue:errors=white,red:input=white,default:reverse=black,gray:menu=cyan,black:menusel=cyan,black:menuhot=cyan,black:menuhotsel=cyan,grey:gauge=black,cyan:dnormal=cyan,black:dfocus=black,gray:dhotnormal=black,cyan:dhotfocus=lightcyan,black:helpnormal=cyan,black:helpbold=white,blue:helpitalic=brightgreen,blue:helpslink=black,blue:helplink=yellow,blue:executable=brightgreen,default:directory=brightblue,default:link=gray,default:special=magenta,default:device=green,default:core=brightred,default:stalelink=brown,cyan:viewunderline=lightgray,cyan:editnormal=lightgray,cyan:editbold=white,cyan:editmarked=black,gray -xterm= -color_terminals= - - -rxvt-unicode-256color= - -[Panels] -show_mini_info=true -kilobyte_si=false -mix_all_files=false -show_backups=true -show_dot_files=true -fast_reload=false -fast_reload_msg_shown=false -mark_moves_down=true -reverse_files_only=true -auto_save_setup_panels=false -navigate_with_arrows=false -panel_scroll_pages=true -mouse_move_pages=true -filetype_mode=true -permission_mode=false -torben_fj_mode=false -quick_search_mode=2 - -simple_swap=false - -[Panelize] -Find *.orig after patching=find . -name \\*.orig -print -Find SUID and SGID programs=find . \\( \\( -perm -04000 -a -perm +011 \\) -o \\( -perm -02000 -a -perm +01 \\) \\) -print -Find rejects after patching=find . -name \\*.rej -print -Modified git files=git ls-files --modified diff --git a/mc/.config/mc/panels.ini b/mc/.config/mc/panels.ini deleted file mode 100644 index ba3ff97..0000000 --- a/mc/.config/mc/panels.ini +++ /dev/null @@ -1,15 +0,0 @@ -# ██████████ █████ -# ░░██░░██░░██ ██░░░██ -# ░██ ░██ ░██░██ ░░ -# ░██ ░██ ░██░██ ██ -# ███ ░██ ░██░░█████ -# ░░░ ░░ ░░ ░░░░░ -# -# ▓▓▓▓▓▓▓▓▓▓ -# ░▓ author ▓ xero <x@xero.nu> -# ░▓ code ▓ http://code.xero.nu/dotfiles -# ░▓ mirror ▓ http://github.com/xero/dotfiles -# ░▓▓▓▓▓▓▓▓▓▓ -# ░░░░░░░░░░ -# - diff --git a/sublime-root/.config/sublime-text-2/Packages/Default/Preferences.sublime-settings b/sublime-root/.config/sublime-text-2/Packages/Default/Preferences.sublime-settings deleted file mode 100644 index e71731c..0000000 --- a/sublime-root/.config/sublime-text-2/Packages/Default/Preferences.sublime-settings +++ /dev/null @@ -1,336 +0,0 @@ -// While you can edit this file, it's best to put your changes in -// "User/Preferences.sublime-settings", which overrides the settings in here. -// -// Settings may also be placed in file type specific options files, for -// example, in Packages/Python/Python.sublime-settings for python files. -{ - // Sets the colors used within the text area - "color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme", - - // Note that the font_face and font_size are overriden in the platform - // specific settings file, for example, "Preferences (Linux).sublime-settings". - // Because of this, setting them here will have no effect: you must set them - // in your User File Preferences. - "font_face": "gohuFont", - "font_size": 11, - - // Valid options are "no_bold", "no_italic", "no_antialias", "gray_antialias", - // "subpixel_antialias", "no_round" (OS X only) and "directwrite" (Windows only) - "font_options": [], - - // Characters that are considered to separate words - "word_separators": "./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}`~?", - - // Set to false to prevent line numbers being drawn in the gutter - "line_numbers": true, - - // Set to false to hide the gutter altogether - "gutter": true, - - // Spacing between the gutter and the text - "margin": 4, - - // Fold buttons are the triangles shown in the gutter to fold regions of text - "fold_buttons": true, - - // Hides the fold buttons unless the mouse is over the gutter - "fade_fold_buttons": true, - - // Columns in which to display vertical rulers - "rulers": [], - - // Set to true to turn spell checking on by default - "spell_check": false, - - // The number of spaces a tab is considered equal to - "tab_size": 4, - - // Set to true to insert spaces when tab is pressed - "translate_tabs_to_spaces": false, - - // If translate_tabs_to_spaces is true, use_tab_stops will make tab and - // backspace insert/delete up to the next tabstop - "use_tab_stops": true, - - // Set to false to disable detection of tabs vs. spaces on load - "detect_indentation": true, - - // Calculates indentation automatically when pressing enter - "auto_indent": true, - - // Makes auto indent a little smarter, e.g., by indenting the next line - // after an if statement in C. Requires auto_indent to be enabled. - "smart_indent": true, - - // Adds whitespace up to the first open bracket when indenting. Requires - // auto_indent to be enabled. - "indent_to_bracket": false, - - // Trims white space added by auto_indent when moving the caret off the - // line. - "trim_automatic_white_space": true, - - // Disables horizontal scrolling if enabled. - // May be set to true, false, or "auto", where it will be disabled for - // source code, and otherwise enabled. - "word_wrap": false, - - // Set to a value other than 0 to force wrapping at that column rather than the - // window width - "wrap_width": 0, - - // Set to false to prevent word wrapped lines from being indented to the same - // level - "indent_subsequent_lines": true, - - // Draws text centered in the window rather than left aligned - "draw_centered": false, - - // Controls auto pairing of quotes, brackets etc - "auto_match_enabled": true, - - // Word list to use for spell checking - "dictionary": "Packages/Language - English/en_US.dic", - - // Set to true to draw a border around the visible rectangle on the minimap. - // The color of the border will be determined by the "minimapBorder" key in - // the color scheme - "draw_minimap_border": false, - - // If enabled, will highlight any line with a caret - "highlight_line": false, - - // Valid values are "smooth", "phase", "blink", "wide" and "solid". - "caret_style": "smooth", - - // Set to false to disable underlining the brackets surrounding the caret - "match_brackets": true, - - // Set to false if you'd rather only highlight the brackets when the caret is - // next to one - "match_brackets_content": true, - - // Set to false to not highlight square brackets. This only takes effect if - // match_brackets is true - "match_brackets_square": true, - - // Set to false to not highlight curly brackets. This only takes effect if - // match_brackets is true - "match_brackets_braces": true, - - // Set to false to not highlight angle brackets. This only takes effect if - // match_brackets is true - "match_brackets_angle": false, - - // Enable visualization of the matching tag in HTML and XML - "match_tags": true, - - // Highlights other occurrences of the currently selected text - "match_selection": true, - - // Additional spacing at the top of each line, in pixels - "line_padding_top": 0, - - // Additional spacing at the bottom of each line, in pixels - "line_padding_bottom": 0, - - // Set to false to disable scrolling past the end of the buffer. - // On OS X, this value is overridden in the platform specific settings, so - // you'll need to place this line in your user settings to override it. - "scroll_past_end": true, - - // This controls what happens when pressing up or down when on the first - // or last line. - // On OS X, this value is overridden in the platform specific settings, so - // you'll need to place this line in your user settings to override it. - "move_to_limit_on_up_down": false, - - // Set to "none" to turn off drawing white space, "selection" to draw only the - // white space within the selection, and "all" to draw all white space - "draw_white_space": "selection", - - // Set to false to turn off the indentation guides. - // The color and width of the indent guides may be customized by editing - // the corresponding .tmTheme file, and specifying the colors "guide", - // "activeGuide" and "stackGuide" - "draw_indent_guides": true, - - // Controls how the indent guides are drawn, valid options are - // "draw_normal" and "draw_active". draw_active will draw the indent - // guides containing the caret in a different color. - "indent_guide_options": ["draw_normal"], - - // Set to true to removing trailing white space on save - "trim_trailing_white_space_on_save": false, - - // Set to true to ensure the last line of the file ends in a newline - // character when saving - "ensure_newline_at_eof_on_save": false, - - // Set to true to automatically save files when switching to a different file - // or application - "save_on_focus_lost": false, - - // The encoding to use when the encoding can't be determined automatically. - // ASCII, UTF-8 and UTF-16 encodings will be automatically detected. - "fallback_encoding": "Western (Windows 1252)", - - // Encoding used when saving new files, and files opened with an undefined - // encoding (e.g., plain ascii files). If a file is opened with a specific - // encoding (either detected or given explicitly), this setting will be - // ignored, and the file will be saved with the encoding it was opened - // with. - "default_encoding": "UTF-8", - - // Files containing null bytes are opened as hexadecimal by default - "enable_hexadecimal_encoding": true, - - // Determines what character(s) are used to terminate each line in new files. - // Valid values are 'system' (whatever the OS uses), 'windows' (CRLF) and - // 'unix' (LF only). - "default_line_ending": "system", - - // When enabled, pressing tab will insert the best matching completion. - // When disabled, tab will only trigger snippets or insert a tab. - // Shift+tab can be used to insert an explicit tab when tab_completion is - // enabled. - "tab_completion": true, - - // Enable auto complete to be triggered automatically when typing. - "auto_complete": true, - - // The maximum file size where auto complete will be automatically triggered. - "auto_complete_size_limit": 4194304, - - // The delay, in ms, before the auto complete window is shown after typing - "auto_complete_delay": 50, - - // Controls what scopes auto complete will be triggered in - "auto_complete_selector": "source - comment", - - // Additional situations to trigger auto complete - "auto_complete_triggers": [ {"selector": "text.html", "characters": "<"} ], - - // By default, auto complete will commit the current completion on enter. - // This setting can be used to make it complete on tab instead. - // Completing on tab is generally a superior option, as it removes - // ambiguity between committing the completion and inserting a newline. - "auto_complete_commit_on_tab": false, - - // Controls if auto complete is shown when snippet fields are active. - // Only relevant if auto_complete_commit_on_tab is true. - "auto_complete_with_fields": false, - - // By default, shift+tab will only unindent if the selection spans - // multiple lines. When pressing shift+tab at other times, it'll insert a - // tab character - this allows tabs to be inserted when tab_completion is - // enabled. Set this to true to make shift+tab always unindent, instead of - // inserting tabs. - "shift_tab_unindent": false, - - // If true, the copy and cut commands will operate on the current line - // when the selection is empty, rather than doing nothing. - "copy_with_empty_selection": true, - - // If true, the selected text will be copied into the find panel when it's - // shown. - // On OS X, this value is overridden in the platform specific settings, so - // you'll need to place this line in your user settings to override it. - "find_selected_text": true, - - // When drag_text is enabled, clicking on selected text will begin a - // drag-drop operation - "drag_text": true, - - // - // User Interface Settings - // - - // The theme controls the look of Sublime Text's UI (buttons, tabs, scroll bars, etc) - "theme": "Default.sublime-theme", - - // Set to 0 to disable smooth scrolling. Set to a value between 0 and 1 to - // scroll slower, or set to larger than 1 to scroll faster - "scroll_speed": 1.0, - - // Controls side bar animation when expanding or collapsing folders - "tree_animation_enabled": true, - - // Makes tabs with modified files more visible - "highlight_modified_tabs": false, - - "show_tab_close_buttons": true, - - // Show folders in the side bar in bold - "bold_folder_labels": false, - - // OS X 10.7 only: Set to true to disable Lion style full screen support. - // Sublime Text must be restarted for this to take effect. - "use_simple_full_screen": false, - - // OS X only. Valid values are true, false, and "auto". Auto will enable - // the setting when running on a screen 2880 pixels or wider (i.e., a - // Retina display). When this setting is enabled, OpenGL is used to - // accelerate drawing. Sublime Text must be restarted for changes to take - // effect. - "gpu_window_buffer": "auto", - - // Valid values are "system", "enabled" and "disabled" - "overlay_scroll_bars": "system", - - // - // Application Behavior Settings - // - - // Exiting the application with hot_exit enabled will cause it to close - // immediately without prompting. Unsaved modifications and open files will - // be preserved and restored when next starting. - // - // Closing a window with an associated project will also close the window - // without prompting, preserving unsaved changes in the workspace file - // alongside the project. - "hot_exit": true, - - // remember_open_files makes the application start up with the last set of - // open files. Changing this to false will have no effect if hot_exit is - // true - "remember_open_files": true, - - // OS X only: When files are opened from finder, or by dragging onto the - // dock icon, this controls if a new window is created or not. - "open_files_in_new_window": true, - - // OS X only: This controls if an empty window is created at startup or not. - "create_window_at_startup": true, - - // Set to true to close windows as soon as the last file is closed, unless - // there's a folder open within the window. This is always enabled on OS X, - // changing it here won't modify the behavior. - "close_windows_when_empty": false, - - // Show the full path to files in the title bar. - // On OS X, this value is overridden in the platform specific settings, so - // you'll need to place this line in your user settings to override it. - "show_full_path": true, - - // Shows the Build Results panel when building. If set to false, the Build - // Results can be shown via the Tools/Build Results menu. - "show_panel_on_build": true, - - // Preview file contents when clicking on a file in the side bar. Double - // clicking or editing the preview will open the file and assign it a tab. - "preview_on_click": true, - - // folder_exclude_patterns and file_exclude_patterns control which files - // are listed in folders on the side bar. These can also be set on a per- - // project basis. - "folder_exclude_patterns": [".svn", ".git", ".hg", "CVS"], - "file_exclude_patterns": ["*.pyc", "*.pyo", "*.exe", "*.dll", "*.obj","*.o", "*.a", "*.lib", "*.so", "*.dylib", "*.ncb", "*.sdf", "*.suo", "*.pdb", "*.idb", ".DS_Store", "*.class", "*.psd", "*.db"], - // These files will still show up in the side bar, but won't be included in - // Goto Anything or Find in Files - "binary_file_patterns": ["*.jpg", "*.jpeg", "*.png", "*.gif", "*.ttf", "*.tga", "*.dds", "*.ico", "*.eot", "*.pdf", "*.swf", "*.jar", "*.zip"], - - // List any packages to ignore here. When removing entries from this list, - // a restart may be required if the package contains plugins. - "ignored_packages": ["Vintage"] -} diff --git a/sublime-root/.config/sublime-text-2/Packages/User/Preferences.sublime-settings b/sublime-root/.config/sublime-text-2/Packages/User/Preferences.sublime-settings deleted file mode 100644 index b031981..0000000 --- a/sublime-root/.config/sublime-text-2/Packages/User/Preferences.sublime-settings +++ /dev/null @@ -1,22 +0,0 @@ -{ - "color_scheme": "Packages/Monokai Extended/Monokai Extended Bright.tmTheme", - "theme": "Brogrammer.sublime-theme", - "font_face": "gohufont", - "font_size": 10, - "ignored_packages": - [ - "Vintage" - ] -} -/* █▓▒░ packages -dotfiles syntax highlighting -gitgutter -handlebars -jshint -monokai extended -package control -php completions kit -sublime codeintel -syntax highlighting for sass -theme - brogrammer -*/
\ No newline at end of file diff --git a/sublime/.config/sublime-text-2/Packages/Default/Preferences.sublime-settings b/sublime/.config/sublime-text-2/Packages/Default/Preferences.sublime-settings deleted file mode 100644 index e71731c..0000000 --- a/sublime/.config/sublime-text-2/Packages/Default/Preferences.sublime-settings +++ /dev/null @@ -1,336 +0,0 @@ -// While you can edit this file, it's best to put your changes in -// "User/Preferences.sublime-settings", which overrides the settings in here. -// -// Settings may also be placed in file type specific options files, for -// example, in Packages/Python/Python.sublime-settings for python files. -{ - // Sets the colors used within the text area - "color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme", - - // Note that the font_face and font_size are overriden in the platform - // specific settings file, for example, "Preferences (Linux).sublime-settings". - // Because of this, setting them here will have no effect: you must set them - // in your User File Preferences. - "font_face": "gohuFont", - "font_size": 11, - - // Valid options are "no_bold", "no_italic", "no_antialias", "gray_antialias", - // "subpixel_antialias", "no_round" (OS X only) and "directwrite" (Windows only) - "font_options": [], - - // Characters that are considered to separate words - "word_separators": "./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}`~?", - - // Set to false to prevent line numbers being drawn in the gutter - "line_numbers": true, - - // Set to false to hide the gutter altogether - "gutter": true, - - // Spacing between the gutter and the text - "margin": 4, - - // Fold buttons are the triangles shown in the gutter to fold regions of text - "fold_buttons": true, - - // Hides the fold buttons unless the mouse is over the gutter - "fade_fold_buttons": true, - - // Columns in which to display vertical rulers - "rulers": [], - - // Set to true to turn spell checking on by default - "spell_check": false, - - // The number of spaces a tab is considered equal to - "tab_size": 4, - - // Set to true to insert spaces when tab is pressed - "translate_tabs_to_spaces": false, - - // If translate_tabs_to_spaces is true, use_tab_stops will make tab and - // backspace insert/delete up to the next tabstop - "use_tab_stops": true, - - // Set to false to disable detection of tabs vs. spaces on load - "detect_indentation": true, - - // Calculates indentation automatically when pressing enter - "auto_indent": true, - - // Makes auto indent a little smarter, e.g., by indenting the next line - // after an if statement in C. Requires auto_indent to be enabled. - "smart_indent": true, - - // Adds whitespace up to the first open bracket when indenting. Requires - // auto_indent to be enabled. - "indent_to_bracket": false, - - // Trims white space added by auto_indent when moving the caret off the - // line. - "trim_automatic_white_space": true, - - // Disables horizontal scrolling if enabled. - // May be set to true, false, or "auto", where it will be disabled for - // source code, and otherwise enabled. - "word_wrap": false, - - // Set to a value other than 0 to force wrapping at that column rather than the - // window width - "wrap_width": 0, - - // Set to false to prevent word wrapped lines from being indented to the same - // level - "indent_subsequent_lines": true, - - // Draws text centered in the window rather than left aligned - "draw_centered": false, - - // Controls auto pairing of quotes, brackets etc - "auto_match_enabled": true, - - // Word list to use for spell checking - "dictionary": "Packages/Language - English/en_US.dic", - - // Set to true to draw a border around the visible rectangle on the minimap. - // The color of the border will be determined by the "minimapBorder" key in - // the color scheme - "draw_minimap_border": false, - - // If enabled, will highlight any line with a caret - "highlight_line": false, - - // Valid values are "smooth", "phase", "blink", "wide" and "solid". - "caret_style": "smooth", - - // Set to false to disable underlining the brackets surrounding the caret - "match_brackets": true, - - // Set to false if you'd rather only highlight the brackets when the caret is - // next to one - "match_brackets_content": true, - - // Set to false to not highlight square brackets. This only takes effect if - // match_brackets is true - "match_brackets_square": true, - - // Set to false to not highlight curly brackets. This only takes effect if - // match_brackets is true - "match_brackets_braces": true, - - // Set to false to not highlight angle brackets. This only takes effect if - // match_brackets is true - "match_brackets_angle": false, - - // Enable visualization of the matching tag in HTML and XML - "match_tags": true, - - // Highlights other occurrences of the currently selected text - "match_selection": true, - - // Additional spacing at the top of each line, in pixels - "line_padding_top": 0, - - // Additional spacing at the bottom of each line, in pixels - "line_padding_bottom": 0, - - // Set to false to disable scrolling past the end of the buffer. - // On OS X, this value is overridden in the platform specific settings, so - // you'll need to place this line in your user settings to override it. - "scroll_past_end": true, - - // This controls what happens when pressing up or down when on the first - // or last line. - // On OS X, this value is overridden in the platform specific settings, so - // you'll need to place this line in your user settings to override it. - "move_to_limit_on_up_down": false, - - // Set to "none" to turn off drawing white space, "selection" to draw only the - // white space within the selection, and "all" to draw all white space - "draw_white_space": "selection", - - // Set to false to turn off the indentation guides. - // The color and width of the indent guides may be customized by editing - // the corresponding .tmTheme file, and specifying the colors "guide", - // "activeGuide" and "stackGuide" - "draw_indent_guides": true, - - // Controls how the indent guides are drawn, valid options are - // "draw_normal" and "draw_active". draw_active will draw the indent - // guides containing the caret in a different color. - "indent_guide_options": ["draw_normal"], - - // Set to true to removing trailing white space on save - "trim_trailing_white_space_on_save": false, - - // Set to true to ensure the last line of the file ends in a newline - // character when saving - "ensure_newline_at_eof_on_save": false, - - // Set to true to automatically save files when switching to a different file - // or application - "save_on_focus_lost": false, - - // The encoding to use when the encoding can't be determined automatically. - // ASCII, UTF-8 and UTF-16 encodings will be automatically detected. - "fallback_encoding": "Western (Windows 1252)", - - // Encoding used when saving new files, and files opened with an undefined - // encoding (e.g., plain ascii files). If a file is opened with a specific - // encoding (either detected or given explicitly), this setting will be - // ignored, and the file will be saved with the encoding it was opened - // with. - "default_encoding": "UTF-8", - - // Files containing null bytes are opened as hexadecimal by default - "enable_hexadecimal_encoding": true, - - // Determines what character(s) are used to terminate each line in new files. - // Valid values are 'system' (whatever the OS uses), 'windows' (CRLF) and - // 'unix' (LF only). - "default_line_ending": "system", - - // When enabled, pressing tab will insert the best matching completion. - // When disabled, tab will only trigger snippets or insert a tab. - // Shift+tab can be used to insert an explicit tab when tab_completion is - // enabled. - "tab_completion": true, - - // Enable auto complete to be triggered automatically when typing. - "auto_complete": true, - - // The maximum file size where auto complete will be automatically triggered. - "auto_complete_size_limit": 4194304, - - // The delay, in ms, before the auto complete window is shown after typing - "auto_complete_delay": 50, - - // Controls what scopes auto complete will be triggered in - "auto_complete_selector": "source - comment", - - // Additional situations to trigger auto complete - "auto_complete_triggers": [ {"selector": "text.html", "characters": "<"} ], - - // By default, auto complete will commit the current completion on enter. - // This setting can be used to make it complete on tab instead. - // Completing on tab is generally a superior option, as it removes - // ambiguity between committing the completion and inserting a newline. - "auto_complete_commit_on_tab": false, - - // Controls if auto complete is shown when snippet fields are active. - // Only relevant if auto_complete_commit_on_tab is true. - "auto_complete_with_fields": false, - - // By default, shift+tab will only unindent if the selection spans - // multiple lines. When pressing shift+tab at other times, it'll insert a - // tab character - this allows tabs to be inserted when tab_completion is - // enabled. Set this to true to make shift+tab always unindent, instead of - // inserting tabs. - "shift_tab_unindent": false, - - // If true, the copy and cut commands will operate on the current line - // when the selection is empty, rather than doing nothing. - "copy_with_empty_selection": true, - - // If true, the selected text will be copied into the find panel when it's - // shown. - // On OS X, this value is overridden in the platform specific settings, so - // you'll need to place this line in your user settings to override it. - "find_selected_text": true, - - // When drag_text is enabled, clicking on selected text will begin a - // drag-drop operation - "drag_text": true, - - // - // User Interface Settings - // - - // The theme controls the look of Sublime Text's UI (buttons, tabs, scroll bars, etc) - "theme": "Default.sublime-theme", - - // Set to 0 to disable smooth scrolling. Set to a value between 0 and 1 to - // scroll slower, or set to larger than 1 to scroll faster - "scroll_speed": 1.0, - - // Controls side bar animation when expanding or collapsing folders - "tree_animation_enabled": true, - - // Makes tabs with modified files more visible - "highlight_modified_tabs": false, - - "show_tab_close_buttons": true, - - // Show folders in the side bar in bold - "bold_folder_labels": false, - - // OS X 10.7 only: Set to true to disable Lion style full screen support. - // Sublime Text must be restarted for this to take effect. - "use_simple_full_screen": false, - - // OS X only. Valid values are true, false, and "auto". Auto will enable - // the setting when running on a screen 2880 pixels or wider (i.e., a - // Retina display). When this setting is enabled, OpenGL is used to - // accelerate drawing. Sublime Text must be restarted for changes to take - // effect. - "gpu_window_buffer": "auto", - - // Valid values are "system", "enabled" and "disabled" - "overlay_scroll_bars": "system", - - // - // Application Behavior Settings - // - - // Exiting the application with hot_exit enabled will cause it to close - // immediately without prompting. Unsaved modifications and open files will - // be preserved and restored when next starting. - // - // Closing a window with an associated project will also close the window - // without prompting, preserving unsaved changes in the workspace file - // alongside the project. - "hot_exit": true, - - // remember_open_files makes the application start up with the last set of - // open files. Changing this to false will have no effect if hot_exit is - // true - "remember_open_files": true, - - // OS X only: When files are opened from finder, or by dragging onto the - // dock icon, this controls if a new window is created or not. - "open_files_in_new_window": true, - - // OS X only: This controls if an empty window is created at startup or not. - "create_window_at_startup": true, - - // Set to true to close windows as soon as the last file is closed, unless - // there's a folder open within the window. This is always enabled on OS X, - // changing it here won't modify the behavior. - "close_windows_when_empty": false, - - // Show the full path to files in the title bar. - // On OS X, this value is overridden in the platform specific settings, so - // you'll need to place this line in your user settings to override it. - "show_full_path": true, - - // Shows the Build Results panel when building. If set to false, the Build - // Results can be shown via the Tools/Build Results menu. - "show_panel_on_build": true, - - // Preview file contents when clicking on a file in the side bar. Double - // clicking or editing the preview will open the file and assign it a tab. - "preview_on_click": true, - - // folder_exclude_patterns and file_exclude_patterns control which files - // are listed in folders on the side bar. These can also be set on a per- - // project basis. - "folder_exclude_patterns": [".svn", ".git", ".hg", "CVS"], - "file_exclude_patterns": ["*.pyc", "*.pyo", "*.exe", "*.dll", "*.obj","*.o", "*.a", "*.lib", "*.so", "*.dylib", "*.ncb", "*.sdf", "*.suo", "*.pdb", "*.idb", ".DS_Store", "*.class", "*.psd", "*.db"], - // These files will still show up in the side bar, but won't be included in - // Goto Anything or Find in Files - "binary_file_patterns": ["*.jpg", "*.jpeg", "*.png", "*.gif", "*.ttf", "*.tga", "*.dds", "*.ico", "*.eot", "*.pdf", "*.swf", "*.jar", "*.zip"], - - // List any packages to ignore here. When removing entries from this list, - // a restart may be required if the package contains plugins. - "ignored_packages": ["Vintage"] -} diff --git a/sublime/.config/sublime-text-2/Packages/User/Preferences.sublime-settings b/sublime/.config/sublime-text-2/Packages/User/Preferences.sublime-settings deleted file mode 100644 index 9e5292a..0000000 --- a/sublime/.config/sublime-text-2/Packages/User/Preferences.sublime-settings +++ /dev/null @@ -1,22 +0,0 @@ -{ - "color_scheme": "Packages/Monokai Extended/Monokai Extended Bright.tmTheme", - "theme": "greybeard.sublime-theme", - "font_face": "gohufont", - "font_size": 10, - "ignored_packages": - [ - "Vintage" - ] -} -/* █▓▒░ packages -dotfiles syntax highlighting -gitgutter -greybeard theme -handlebars -jshint -monokai extended -package control -php completions kit -sublime codeintel -syntax highlighting for sass -*/
\ No newline at end of file |