Giter Site home page Giter Site logo

boxquote.el's Introduction

//

boxquote.el's People

Contributors

davep avatar skangas avatar tarsius avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

boxquote.el's Issues

May you please create a tag for release?

Good evening,

Tonight I am writing to humbly put in a request for you to tag this project.

The reason is that a lot of users want to rely on the most "stable" release, by
the most broad definition of the term. For me, it is really simple, I am setting
up a "stable" Emacs configuration of my system here https://github.com/grettke/home/blob/master/.emacs.el
and I would like to rely 100% upon MELPA Stable http://stable.melpa.org/#/ .

I've used your package for a long time, love it, and so do many, many others.
This is a way to get that project out to the other thousands and thousands of
users who also rely upon MELPA stable.

All it takes is for you to create a tag, and within hours, it will show up on
MELPA stable.

Can't wait to hear about what you think and whether or not a tag is in this
project's future!

Kind regards,

Grant Rettke

P.S.

How does anyone work with snippets in emails without this package? It is critical. It oughta be out
there for the melpa stable users, too :).

boxquote-describe-function/variable and custom completing-read-functions

The functions boxquote-describe-function and boxquote-describe-variable currently assume that the function or variable being described are the current car of minibuffer-history (on GNU Emacs). This assumption has been correct in the past but might not be true anymore. Concretely, emacs users may use a custom completing-read-function (e.g., a home-brewn one, ido-completing-read from the builtin ido mode, or ivy-mode from https://github.com/abo-abo/swiper), and that doesn't neccessarily need to populate minibuffer-history. FWIW, at least ivy-mode does not use minibuffer-history and thus the title of a boxquoted variable or function description is always nil (or whatever something else has pushed onto minibuffer-history; it's at least never the variable or function name).

So it would be great if the assumption that the variable/function name are the first element in some history list could be removed. I've tested that the describe-* functions also return the description as a string (in addition to creating a *Help* buffer) in GNU Emacs 22, 24, 25, and XEmacs 21.4.22 and 21.5 beta. The described variable or function is always the very first word in the string. The only difference between Emacs and XEmacs is that the latter quotes the function/variable whereas the former doesn't.

I have tested that the following regular expression matches the variable/function name no matter if and how it might be quoted.

(let (l)
  (dolist (desc '("`--th/foo-insert--` is a built-in function in `C source code'."
                  "`--th/foo-insert--' is a built-in function in `C source code'."
                  "‘--th/foo-insert--’ is a built-in function in `C source code'."
                  "--th/foo-insert-- is a built-in function in `C source code'.")
                l)
    (string-match "^[^-/:\\s_\\sw]?\\(\\(?:\\s_\\|\\sw\\|/\\)+\\)[^-/:\\s_\\sw]?" desc)
    (push (match-string 1 desc) l)))
;=> ("--th/foo-insert--" "--th/foo-insert--" "--th/foo-insert--" "--th/foo-insert--")

So string-match with that regexp could be used instead of relying that the symbol name is the car of minibuffer-history. I've tested that with all Emacs and XEmacs versions cited above. I don't have Emacs 23 handy but I'm very sure that it'll work there, too.

If you think this is the right approach, feel free to request a pull request.

Obsolescence of generalized variables in Emacs 29

Hi,

many thanks for this package. The latest Emacs 29 has obsoleted some generalized variable resulting in some warnings when compiling boxquote.el:

In toplevel form:
boxquote.el:232:12: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:243:18: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:249:16: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:267:14: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:291:18: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:294:20: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:298:40: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:282:26: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:362:22: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:369:35: Warning: `buffer-string' is an obsolete generalized variable.
boxquote.el:497:32: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:501:32: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.
boxquote.el:529:14: Warning: `point' is an obsolete generalized variable; use `goto-char' instead.

Would it be possible to fix them? I'm not familiar with the code, hence no PR. TIA.

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.