GithubHelp home page GithubHelp logo

Comments (31)

andreyorst avatar andreyorst commented on August 15, 2024 1

fish doesn't support $(...)... mother of god why...

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

Hm. That's weird, because I shouldn't fail if no highlighter is installed. Because it fallbacks to cat. I have no highlighter in my Termux instance, and it works fine there, though inside tmux. I'll investigate it

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

@TeddyDD does fzf-buffer work? It uses different implementation. If It isn't working too, there's nothing to do with preview. Also please check fzf-cd

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

buffer and cd works. I checked if this might be terminal related but both kitty and xst gives me the same result

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

I've found the issue. Please try with latest master

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

No. Actually not. The problem is that the size calculation isn't happening.

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

I've pushed modified version, in which $pos variable contains default value. Please try to launch fzf with it

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

I've pushed fix_preview branch, can you please try it? It works in my setup, I even symlinked sh to dash. Though It worked for me whole time, so my configuration can't be referenced.

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

It doesn't close terminal window so you probably fixed it :)

Problem is apparently fzf uses $SHELL in preview command so preview it's broken on Fish shell. I fixed it with this patch

diff --git i/rc/fzf.kak w/rc/fzf.kak
index a038c9..ec160c 100644
--- i/rc/fzf.kak
+++ w/rc/fzf.kak
@@ -334,7 +334,7 @@ define-command -hidden fzf -params 2..3 %{ evaluate-commands %sh{
     elif [ ! -z "${kak_opt_termcmd}" ]; then
         path=$(pwd)
         additional_flags=$(echo $additional_flags | sed "s:\$pos:\\\\\$pos:")
-        cmd="$kak_opt_termcmd \"sh -c \\\"cd $path && $preview_pos $items_command | fzf --expect ctrl-q $additional_flags > $tmp\\\"\""
+        cmd="$kak_opt_termcmd \"sh -c \\\"SHELL=/bin/sh; export SHELL; cd $path && $preview_pos $items_command | fzf --expect ctrl-q $additional_flags > $tmp\\\"\""
     else
         echo "fail termcmd option is not set"
         exit

Not sure if this patch is correct way to do this, but after applying it, it works for me.

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

/bin/sh is not always there. For example in Termux there's no /bin/sh

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

@TeddyDD can you please try the latest fix_preview branch?

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

It doesn't work, terminal shows up for split of a second and closes.

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

Weird. It works for me. I suspect that we have single thing that doesn't work on your setup and works on my. I'll try to use fish

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

I tried to run Kakoune with bash and sh on fix_preview branch. I'm getting
invalid preview window layout: for a second and terminal closes

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

Thats exactly what I've been fixing all the time, and strangely enough it works for me

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

yeah, but that shoudn't matter since Kakoune uses posix shell in expansions, right?

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

yeah, but I pass shell command to terminal via $termcmd -e, then I pass it to sh -c to actually do the thing. This way it should be more portable, since we always use sh. Now I try to debug this 3 screen line command in fish, and the syntax is wrong in the places where I least expect it to be.

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

@TeddyDD with latest changes, still doesn't work?

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

um, you haven't pushed anything new to fix_preview

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

Oh. Sorry. I didn't noticed that my connection was off. I've pushed the changes

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

nope, still blinking terminal

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

Can I ask you to try with another login shell? Althoughit works for me in KDE and Mate, with bash, zsh, and fish as a login shells...

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

sure, I'll try and report back

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

I've installed kitty, and now it isn't working for me too. I'm testing this mainly with termite. So I thought that other terminals should work. Turns out that that's not always true. Mate terminal brokes too.

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

I tried with bash as login shell, it doesn't help. I tried it under st and kitty

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

I've noticed that this doesn't work with kitty, and alacritty when they set as termcmd. If I change it, it works. Try changing termcmd to some common terminal, like gnome terminal? Maybe it is the issue with kitty, as it need some additional argument. Currently, setting termcmd to termite -e gnome-terminal -e and mate-terminal -e makes it work.

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

I see.
when alacritty installed termcmd equals to alacritty -e sh -c
when kitty installed termcmd equals to kitty sh -c
I use termite, and with it termcmd equals to termite -e

Seems likse -e isn't compatible with sh -c in some ways.

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

Ok now I know where to dig. Expect a fix in couple of hours :)

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

@TeddyDD should work now. I've tested with all possible at the moment terminals

from fzf.kak.

TeddyDD avatar TeddyDD commented on August 15, 2024

it works, awesome job!

from fzf.kak.

andreyorst avatar andreyorst commented on August 15, 2024

awesome job

issue solved exactly in 30 comments.

I'll merge this into master now

from fzf.kak.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.