[i3ass] master command #200
Labels
No labels
Arch PKGBUILD
bug
build
commandline
duplicate
enhancement
font
good first issue
help wanted
implemented
is-it-really-a-bug?
necromancy
not-reproducable
question
reproducable
rofi
solved?
stalled
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
bud/i3ass#200
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
After reviewing the last couple of issues (#195 , #194, #182) , I realize that using i3ass can be quite confusing. Especially if the user has been following the project for a long time, since commands have merged in and out of each other, gotten renamed, options deprecated and renamed e.t.c.
Some functionality of i3ass is replacing core functions of i3. Like
i3viswiz leftreplaces the builtinfocus left,i3Kornhe leftreplacesmove left,i3fyra -a|--floatreplacesfloating toggle.i3fyra --move leftcould be used instead ofi3Kornhe leftbut it is not recommended.i3flipreplacefocus next. also not the uppercase K and spelling of Kornhe, what does it even mean?I think it is to late, to rewrite and deprecate options of existing commands, but a good solution and enhancement would be something like this:
i3ass focus DIRECTIONi3viswiz DIRECTIONfocusi3ass focus next|previ3flip next|prevfocusi3ass move DIRECTIONi3Kornhe DIRECTIONmovei3ass move next|previ3flip --move next|prevmovei3ass toggle floati3fyra --floattoggle floati3ass toggle layouti3fyra --layout redoi3ass toggle zeni3zeni3ass layout LAYOUTi3fyra --layout LAYOUTi3ass layout togglei3fyra --layout redoi3ass set i3fyra-workspace WORKSPACEi3var set i3fyra_ws WORKSPACEi3ass run [class=URxvt instance=termsmall] COMMANDi3run --class URxvt --instance termsmall -- COMMANDi3ass help focus|move|toggle|layout|set|runthis is just an example, but we would end up with a interface that is close to default i3, viswiz, flip and Kornhe becomes focus|move .
i3ass toggle zenis longer than the originali3zenbut it is much clearer how it will work.i3list, i3get, i3king
The commands in the i3ass repo can be divided into three groups.
i3king is kind of independent and its commandline is straight forward, so it feels un-necessary to include it with the i3ass aliases. imo, only the first group + i3run and maybe later i3term should be included.
I don't think this will be difficult or complicated to setup. Another benefit, is that if a new way of using for instance
i3run, like wheni3run --commandwas deprecated in favor fori3run -- commandthe UI fori3ass run [CRITERIA] COMMANDwill stay the same.@1ntronaut , what do you think about this?
same goes here, had written reply long time ago, but never posted it.
A globalization of several main/important/most used commands in the i3ass suite seems to me a great idea.
I would however, like to add (request) some functionality I think is very desirable.
The new commands are dependent on the values of
i3list[AWP]andi3list[LVI]the commands should do the following:
split,orientationandcontainers in family order: change focus from currently focused i3fyra container to the next/previous visible i3fyra container (the focus should also wrap)An example in my case:
split,orientationandcontainers in family order: move currently focused i3fyra container to the next/previous visible i3fyra container (the move should also wrap)An example in my case:
i3ass move-con next, container A hidden in this exampleproposal nr. 2 couuld pose a challenge maybe ; I think you'd have to introduce a new entry (obtained through
i3listcontaining a value forpreviously visible i3fyra containers, for use in i3fyra container movement cycle, for the autohide and unhide functionality to correctly occur, targeting the correct i3fyra container; esp. if not all containers are visible when this command runst for the first timehowever, you're the dev here, I don't think I'm up to the task of writing a compatible and functional script to handle above proposal functionalities...
I just thought it might provide valuable additions in i3fyra's functionality/capabilities..
cheers,
intronaut
Sounds like great ideas! But I wonder in proposal nr.2 if it really is desirable to move a container to a not visible one. I imagine the action being triggered by a keybinding and used in a alt-tab kind of way. And using same example as you, lets say hours have passed between step two and three, and user have "forgotten" that the D container was originally moved from ,now hidden C, and B is visible, here i would more expect to next-move to B.
And as you mention it will get tricky to keep track of container parents. Another edge case is if container order "has changed", like in example two, after step two, lets say container C has been made visible again (by other means), and then container A, then container A and C is swapped, then C is hidden. or something like that, it gets weird.
But focus/move to next visible container should be "easy". Big thanks for this suggestion.
Also, regarding wrapping the focus/movement. Without testing or anything, i wonder if it shouldn't follow this priority pattern (assuming horizontal layout AC + BD families):
Also, if the target container is not tabbed or stacked, i think this should respect the focus order of the target container, which i3viswiz focus left/right/up/down very counsiously doesn't respect. But it will not be difficult to do it here.
On topic, i don't even remember what i did with the i3ass command, i haven't looked at this project in months. Its time to give i3ass some love, i think there is a new i3 release coming soon also so its good to get in the groove a bit.