Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

newly added valign-mode makes org-mode unusable #14223

Closed
emacs18 opened this issue Dec 20, 2020 · 24 comments · Fixed by #14229
Closed

newly added valign-mode makes org-mode unusable #14223

emacs18 opened this issue Dec 20, 2020 · 24 comments · Fixed by #14229

Comments

@emacs18
Copy link
Contributor

emacs18 commented Dec 20, 2020

In the past week or so someone introduce valign-mode to spacemacs. This pretty much hosed my emacs whenever I visit a file with large tables. Each time I visit a file it just seems to hang, and I have to hit C-g to bring emacs back. Sure I can disable this by setting the mode variable to nil. Why was this introduced? Why is there absolutely no comment as to explain what it is for? Why did it default to being enabled rather than disabled?

I use latest develop branch of spacemacs, and ubuntu 20.04. Pretty much any table editing or yanking operation takes at least several seconds if not dozens of seconds. I enabled debug-on-error and cut and pasted few rows in my table. The stack trace is shown below.

Debugger entered--Lisp error: (valign-parse-error "Missing rows or columns")
  signal(valign-parse-error ("Missing rows or columns"))
  valign--calculate-cell-width(69278)
  valign-table-1()
  valign-table-maybe(nil t)
  valign-region(68663 69154)
  #f(compiled-function (fun) #<bytecode 0x2458bd9>)(valign-region)
  run-hook-wrapped(#f(compiled-function (fun) #<bytecode 0x2458bd9>) valign-region)
  jit-lock--run-functions(68663 69154)
  jit-lock-fontify-now(68663 69163)
  jit-lock-function(68663)
  redisplay_internal\ \(C\ function\)()

@emacs18
Copy link
Contributor Author

emacs18 commented Dec 20, 2020

I have been using org files with tables like this for many years. I export it to html. So org html exporter has no problem with my org files. Why does valign-mode think that my tables are not valid? My guess is that it has it's own org table parser which is buggy.

@emacs18
Copy link
Contributor Author

emacs18 commented Dec 20, 2020

Until someone figures this out, can someone please remove valign from spacemacs, or at least disable it by default so as not to cause harm to many folks?

@lebensterben
Copy link
Collaborator

Can you post an exmaple file with large table?

@emacs18
Copy link
Contributor Author

emacs18 commented Dec 20, 2020

I tried to scramble the data so as not to reveal private company details. My table could have many dozens of rows like the following. Each file could have several of these tables.

#+LINK: cl https://x/y/z?a=%s
#+LINK: jira https://jira.example.com/browse/%s

| 12/17 16:27 | user | [[cl:1238914][1212314]] | [[cl:1238806][1238806]] |   |   |   |   | [[jira:ABCDEFGHIJ-91067][ABCDEFGHIJ-91067]] |   |

Any of the empty columns above could also have cl links such as columns 3 and 4.

@rayw000
Copy link
Contributor

rayw000 commented Dec 22, 2020

@emacs18

Sorry for making you in trouble. I'm the one who introduced valign-mode into spacemacs.

I opened PR #14196 because tables with non-ascii characters are not well-aligned in org-mode buffers (not in exported files) for years, for me and for some other users. Do you mind if you have a test with non-ascii characters? 🙂

Indeed, according to the document of valign-mode, it may be laggy working with tables containing more than 100 lines. I'd tested with tables containing about 500 lines, lags appeared to be acceptable to me, then I submitted my pull request. If it bothers you, I apologize.

I've tested the line you provided repeating 500 times and found no errors, just laggy. Would you like to provide more details?

I've opened another PR #14229 to disable valign-mode in default, in case some others run into the same trouble.

@mack1070101
Copy link

@rayw000 Thanks for reverting. I've ran into the same issue as well. Additionally, valign-mode is breaking table alignment for me in addition to introducing some pretty significant slowness. I think one other thing for you to test, would be when you have multiple large tables in a file/buffer. That seemed to trigger really significant slowness for me

@emacs18
Copy link
Contributor Author

emacs18 commented Dec 22, 2020

Following is closer to my real links.

#+LINK: cl https://abcdef/~xyz/cgi-bin/aaaaa_abcdefjkdl.cgi?xxxx=on&kkkkkk=aaa-ab23:9878&yy=%s
#+LINK: jira https://jira.abcdefil.abcdefks.com/absdfe/%s

I don't see why I need to test with non-ascii characters. I don't use them. All my tables are ASCII only.
Each org file may have 4 or 5 of these tables each of which could have hundreds of rows. Also different rows may have cl links in different columns. Some rows have one, but others may have 4 or 5.

@emacs18
Copy link
Contributor Author

emacs18 commented Dec 22, 2020

Here is a full table. Try copying and paste few rows, copying and pasting the whole headline, collapsing and expanding headlines, etc. Some of these operations take over a dozen seconds.

* table
|-------------+----------+---------+---------+---------+---------+---------+---------+---------------------+-----------------------|
| Awaa        | Aaaa     | akwn    | A       | A-1     | A-11    | A-19    | A       | Awak                | Aaaaanaa              |
|-------------+----------+---------+---------+---------+---------+---------+---------+---------------------+-----------------------|
| 12/13 99:99 | awnaakna | [[al:9999993][9999993]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91291][A99919993-91291]]     |                       |
| 12/13 99:99 | awnaakna | [[al:9999993][9999993]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91291][A99919993-91291]]     |                       |
| 12/13 12:19 | kaaaa    | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/13 19:93 | aawaaka  | [[al:9999199][9999199]] | [[al:9999193][9999193]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/13 19:92 | aawklan  | [[al:9999199][9999199]] | [[al:9999199][9999199]] |         |         |         |         | [[awak:A99919993-92919][A99919993-92919]]     |                       |
| 12/13 19:31 | xaka     | [[al:9999299][9999299]] | [[al:9999299][9999299]] |         |         |         |         | [[awak:A99919993-91939][A99919993-91939]]     |                       |
| 12/13 19:93 | akaawnaa | [[al:9999299][9999299]] | [[al:9999239][9999239]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/13 29:91 | aaaaawla | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         |                     | awx aaaaa ayalwnka    |
| 12/13 29:29 | aaaaawla | [[al:9999939][9999939]] | [[al:9999929][9999929]] |         |         |         |         |                     | awaaa                 |
| 12/13 21:99 | alwkna   | [[al:9999991][9999991]] | [[al:9999992][9999992]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/13 23:99 | aaya     | [[al:9999913][9999913]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-99239][A99919993-99239]]     |                       |
| 12/19 99:29 | xaa      | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92933][A99919993-92933]]     |                       |
| 12/19 92:91 | aanak    | [[al:9999399][9999399]] | [[al:9999399][9999399]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 99:39 | yya      | [[al:9999999][9999999]] | [[al:9999931][9999931]] |         |         |         |         | [[awak:A99919993-91991][A99919993-91991]]     |                       |
| 12/19 99:19 | aaaanaa  | [[al:9999999][9999999]] | [[al:9999991][9999991]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 99:99 | aaakaka  | [[al:9999929][9999929]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 99:99 | aaaanaa  | [[al:9999993][9999993]] | [[al:9999992][9999992]] |         |         |         |         | [[awak:A99919993-91939][A99919993-91939]]     |                       |
| 12/19 99:99 | aaaaawla | [[al:9991999][9991999]] |         |         |         |         |         |                     | awx AAA awla          |
| 12/19 99:29 | lwla     |         |         |         |         |         | [[al:9991993][9991993]] | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 99:99 | aylakwn  | [[al:9991219][9991219]] | [[al:9991199][9991199]] |         |         |         |         | [[awak:A99919993-99121][A99919993-99121]]     |                       |
| 12/19 19:99 | aanayakn | [[al:9991299][9991299]] | [[al:9991293][9991293]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:99 | kwaa     | [[al:9991312][9991312]] | [[al:9991299][9991299]] |         |         |         |         | [[awak:A99919993-91192][A99919993-91192]]     | aa aakla awlaa        |
| 12/19 11:21 | aawaaka  | [[al:9991399][9991399]] | [[al:9991339][9991339]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 11:99 | awnaakna | [[al:9991999][9991999]] |         | [[al:9991991][9991991]] |         |         |         | [[awak:A99919993-91291][A99919993-91291]]     |                       |
| 12/19 12:19 | aaaawkna | [[al:9991992][9991992]] | [[al:9991929][9991929]] |         | [[al:9991991][9991991]] |         |         | [[awak:A99919993-91939][A99919993-91939]]     | kll aaaak             |
| 12/19 12:99 | kaaaa    | [[al:9991999][9991999]] | [[al:9991999][9991999]] |         |         | [[al:9991991][9991991]] |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 13:99 | aaawaa   | [[al:9991939][9991939]] | [[al:9991929][9991929]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:29 | kwaa     | [[al:9991993][9991993]] | [[al:9991992][9991992]] |         |         |         |         | [[awak:A99919993-91192][A99919993-91192]]     | aa aa_awlaa           |
| 12/19 19:99 | kwaa     | [[al:9991999][9991999]] | [[al:9991999][9991999]] |         |         |         |         | [[awak:A99919993-91192][A99919993-91192]]     | awa aaaaana           |
| 12/19 19:21 | aaka     | [[al:9991999][9991999]] | [[al:9991999][9991999]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 19:31 | kaaaa    | [[al:9991999][9991999]] | [[al:9991929][9991929]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:99 | aanayakn | [[al:9991913][9991913]] | [[al:9991999][9991999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:22 | aaaaawla |         | [[al:9991999][9991999]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     | kaa lwaaaaa.aa wn AAA |
| 12/19 19:39 | xaa      | [[al:9991999][9991999]] | [[al:9991999][9991999]] |         |         |         |         | [[awak:A99919993-92939][A99919993-92939]]     |                       |
| 12/19 19:99 | aaaaawla | [[al:9991993][9991993]] |         |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 19:99 | kaaaa    | [[al:9992999][9992999]] | [[al:9991993][9991993]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:11 | awaaka   | [[al:9992999][9992999]] | [[al:9991999][9991999]] |         |         |         |         | [[awak:A99919993-99991][A99919993-99991]]     |                       |
| 12/19 19:32 | aaa      | [[al:9992999][9992999]] | [[al:9992993][9992993]] |         |         |         |         | [[awak:A99919993-92991][A99919993-92991]]     |                       |
| 12/19 29:99 | aawaaka  | [[al:9992132][9992132]] | [[al:9992199][9992199]] |         |         |         |         | [[awak:A99919993-99939][A99919993-99939]]     |                       |
| 12/19 21:29 | aaaaakaa | [[al:9992299][9992299]] | [[al:9992231][9992231]] |         |         |         |         | [[awak:A99919993-92992][A99919993-92992]]     |                       |
| 12/19 21:99 | ayknaaan | [[al:9992299][9992299]] | [[al:9992291][9992291]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 21:99 | xxwna    | [[al:9992299][9992299]] | [[al:9992299][9992299]] |         |         |         |         | [[awak:A99919993-99291][A99919993-99291]]     |                       |
| 12/19 21:99 | ayaan    | [[al:9992393][9992393]] | [[al:9992292][9992292]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 22:11 | aaaaa    | [[al:9992339][9992339]] | [[al:9992322][9992322]] |         |         |         |         | [[awak:A99919993-39999][A99919993-39999]]     |                       |
| 12/19 23:11 | akaaaaka | [[al:9992939][9992939]] | [[al:9992399][9992399]] |         |         |         |         | [[awak:A99919993-99993][A99919993-99993]]     |                       |
| 12/19 91:99 | akaaaaka | [[al:9992999][9992999]] | [[al:9992919][9992919]] |         |         |         |         | [[awak:A99919993-91392][A99919993-91392]]     |                       |
| 12/19 91:99 | yaaawa   | [[al:9992999][9992999]] | [[al:9992999][9992999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 91:29 | xxwna    | [[al:9992933][9992933]] | [[al:9992999][9992999]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 91:99 | akaaaaka | [[al:9992999][9992999]] | [[al:9992992][9992992]] |         |         |         |         | [[awak:A99919993-19929][A99919993-19929]]     |                       |
| 12/19 91:99 | kakna    | [[al:9992912][9992912]] | [[al:9992999][9992999]] |         |         |         |         | [[awak:A99919993-99331][A99919993-99331]]     |                       |
| 12/19 92:19 | aaaw     | [[al:9992999][9992999]] | [[al:9992999][9992999]] |         |         |         |         | [[awak:A99919993-91393][A99919993-91393]]     |                       |
| 12/19 92:19 | yaaawa   | [[al:9992999][9992999]] | [[al:9992999][9992999]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 92:93 | aawnaaak | [[al:9993939][9993939]] | [[al:9993999][9993999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 93:19 | xxwna    | [[al:9993199][9993199]] | [[al:9993999][9993999]] |         |         |         |         | [[awak:A99919993-99291][A99919993-99291]]     |                       |
| 12/19 99:99 | awaaaaa  | [[al:9993999][9993999]] | [[al:9993399][9993399]] |         |         |         |         | [[awak:A99919993-91991][A99919993-91991]]     |                       |
| 12/19 99:99 | kaaaa    | [[al:9993992][9993992]] | [[al:9993991][9993991]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 99:23 | lwla     |         |         |         |         |         | [[al:9993999][9993999]] | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 99:23 | ywnaawa  | [[al:9993999][9993999]] | [[al:9993939][9993939]] |         |         |         |         | [[awak:A99919993-91119][A99919993-91119]]     | kll aaaak             |
| 12/19 99:12 | awllaaa  | [[al:9993999][9993999]] | [[al:9993929][9993929]] |         |         |         |         | [[awak:A99919993-92921][A99919993-92921]]     |                       |
| 12/19 99:31 | aylakwn  | [[al:9993999][9993999]] | [[al:9993999][9993999]] |         |         |         |         | [[awak:A99919993-92992][A99919993-92992]]     |                       |
| 12/19 19:92 | aaaaa    | [[al:9993999][9993999]] | [[al:9993993][9993993]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 12:91 | kaaaa    | [[al:9993999][9993999]] | [[al:9993999][9993999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 13:93 | aaaaawla | [[al:9999931][9999931]] | [[al:9999919][9999919]] |         |         |         |         |                     | aa *.aaa awlaa        |
| 12/19 13:99 | kaaaa    | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 13:99 | aanaakan | [[al:9999999][9999999]] | [[al:9999991][9999991]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:99 | aaaaawla |         | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 19:99 | alw      | [[al:9999192][9999192]] | [[al:9999139][9999139]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 19:19 | aanaakan | [[al:9999199][9999199]] | [[al:9999199][9999199]] |         |         |         |         | [[awak:A99919993-91919][A99919993-91919]]     |                       |
| 12/19 19:33 | kaaaa    | [[al:9999191][9999191]] | [[al:9999199][9999199]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:39 | waaykn   | [[al:9999199][9999199]] | [[al:9999199][9999199]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 19:19 | waaykn   | [[al:9999219][9999219]] | [[al:9999299][9999299]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 19:19 | lwawn    | [[al:9999219][9999219]] | [[al:9999299][9999299]] |         |         |         |         | [[awak:A99919993-92131][A99919993-92131]]     |                       |
| 12/19 19:22 | kaakaaka | [[al:9999229][9999229]] | [[al:9999213][9999213]] |         |         |         |         | [[awak:A99919993-91192][A99919993-91192]]     |                       |
| 12/19 19:39 | aaaaawla | [[al:9999232][9999232]] |         |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 19:93 | aaka     | [[al:9999293][9999293]] | [[al:9999299][9999299]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 19:19 | lwla     |         |         |         |         |         | [[al:9999292][9999292]] | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 19:99 | awaay    | [[al:9999321][9999321]] | [[al:9999312][9999312]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:99 | aknawa   | [[al:9999339][9999339]] | [[al:9999329][9999329]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 19:39 | aaa      | [[al:9999399][9999399]] | [[al:9999393][9999393]] |         |         |         |         | [[awak:A99919993-99291][A99919993-99291]]     |                       |
| 12/19 19:92 | yaaawaa  | [[al:9999999][9999999]] | [[al:9999399][9999399]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:93 | aaaaa    | [[al:9999999][9999999]] | [[al:9999392][9999392]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 29:99 | aawkaal  | [[al:9999919][9999919]] | [[al:9999911][9999911]] |         |         |         |         | [[awak:A99919993-99911][A99919993-99911]]     |                       |
| 12/19 29:39 | aanaakan | [[al:9999999][9999999]] | [[al:9999939][9999939]] |         |         |         |         | [[awak:A99919993-92129][A99919993-92129]]     |                       |
| 12/19 22:19 | waaykn   | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-99191][A99919993-99191]]     |                       |
| 12/19 22:21 | aanaakan | [[al:9999999][9999999]] | [[al:9999991][9999991]] |         |         |         |         | [[awak:A99919993-91919][A99919993-91919]]     |                       |
| 12/19 22:99 | lwla     |         |         |         |         |         | [[al:9999929][9999929]] | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 23:99 | lwla     |         |         |         |         |         | [[al:9999999][9999999]] | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 23:29 | aawkaal  | [[al:9999991][9999991]] | [[al:9999999][9999999]] |         |         |         |         |                     |                       |
| 12/19 99:29 | lwla     | [[al:9999929][9999929]] | [[al:9999919][9999919]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 99:33 | yaaawaa  | [[al:9999999][9999999]] | [[al:9999939][9999939]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 99:93 | aawklan  |         |         |         |         |         | [[al:9999993][9999993]] | [[awak:A99919993-92919][A99919993-92919]]     |                       |
| 12/19 91:39 | aaaaala  | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 91:39 | aawnaaak | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 91:99 | xaa      | [[al:9999999][9999999]] | [[al:9999919][9999919]] |         |         |         |         | [[awak:A99919993-92939][A99919993-92939]]     |                       |
| 12/19 92:29 | aaaaala  | [[al:9999129][9999129]] | [[al:9999992][9999992]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 93:19 | aaa      | [[al:9999231][9999231]] | [[al:9999299][9999299]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 99:39 | yaknaa   | [[al:9999999][9999999]] | [[al:9999939][9999939]] |         |         |         |         | [[awak:A99919993-91299][A99919993-91299]]     |                       |
| 12/19 99:12 | kwaa     | [[al:9999999][9999999]] | [[al:9999939][9999939]] |         |         |         |         | [[awak:A99919993-92119][A99919993-92119]]     | naw xaaaawaa          |
| 12/19 99:29 | awaay    | [[al:9999991][9999991]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 13:99 | kwaa     | [[al:9999292][9999292]] | [[al:9999299][9999299]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     | alkna awx             |
| 12/19 19:99 | aawaaka  | [[al:9999399][9999399]] | [[al:9999399][9999399]] |         |         |         |         | [[awak:A99919993-99939][A99919993-99939]]     |                       |
| 12/19 19:12 | awaay    | [[al:9999392][9999392]] | [[al:9999399][9999399]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:29 | aanaya   | [[al:9999919][9999919]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-99399][A99919993-99399]]     |                       |
| 12/19 19:99 | aawaaka  | [[al:9999939][9999939]] | [[al:9999939][9999939]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 19:92 | awkakwna | [[al:9999939][9999939]] | [[al:9999932][9999932]] |         |         |         |         | [[awak:A99919993-99919][A99919993-99919]]     |                       |
| 12/19 19:99 | aaaawkna | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92991][A99919993-92991]]     |                       |
| 12/19 19:99 | aawaaka  | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:99 | aknawa   | [[al:9999992][9999992]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 19:99 | aaaaa    | [[al:9999999][9999999]] | [[al:9999991][9999991]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 19:29 | aawklan  | [[al:9999911][9999911]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 19:99 | kaaaa    | [[al:9999929][9999929]] | [[al:9999912][9999912]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 29:99 | naawaaka | [[al:9999999][9999999]] | [[al:9999932][9999932]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     | kll aaaak             |
| 12/19 29:99 | yaaawa   | [[al:9999991][9999991]] | [[al:9999993][9999993]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 21:22 | waaykn   | [[al:9999939][9999939]] | [[al:9999922][9999922]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 21:93 | aaaaawla | [[al:9999992][9999992]] | [[al:9999999][9999999]] |         |         |         |         |                     |                       |
| 12/19 21:99 | awaaka   | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 22:99 | aawnaaak | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 22:99 | xaa      | [[al:9999999][9999999]] | [[al:9999992][9999992]] |         |         |         |         | [[awak:A99919993-92191][A99919993-92191]]     |                       |
| 12/19 23:22 | awaaka   | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 23:39 | aawklan  | [[al:9999929][9999929]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 99:92 | yaaawaa  | [[al:9999992][9999992]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 99:19 | yya      | [[al:9999119][9999119]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91991][A99919993-91991]]     |                       |
| 12/19 91:99 | aknawa   | [[al:9999293][9999293]] | [[al:9999219][9999219]] |         |         |         |         | [[awak:A99919993-92191][A99919993-92191]]     |                       |
| 12/19 99:99 | wla      | [[al:9999929][9999929]] | [[al:9999913][9999913]] |         |         |         |         | [[awak:A99919993-91929][A99919993-91929]]     |                       |
| 12/19 11:99 | aaaawl   | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 11:39 | aaaawkna | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91939][A99919993-91939]]     |                       |
| 12/19 11:99 | aaaaawla | [[al:9999912][9999912]] | [[al:9999999][9999999]] |         |         |         |         |                     |                       |
| 12/19 12:39 | aaknaaa  | [[al:9999992][9999992]] | [[al:9999993][9999993]] |         |         |         |         | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 12:99 | kaaaa    | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 12:99 | aaaaawla |         | [[al:9999999][9999999]] |         |         |         |         |                     | aa aal/ak 9.9         |
| 12/19 12:21 | aaknaaka |         | [[al:9999933][9999933]] |         |         |         |         | [[awak:A99919993-99929][A99919993-99929]]     |                       |
| 12/19 13:29 | aaknaaka |         | [[al:9999929][9999929]] |         |         |         |         | [[awak:A99919993-99929][A99919993-99929]]     |                       |
| 12/19 19:39 | awnaakna | [[al:9999993][9999993]] | [[al:9999991][9999991]] |         |         |         |         | [[awak:A99919993-91291][A99919993-91291]]     |                       |
| 12/19 19:33 | aaaaawla | [[al:9999999][9999999]] | [[al:9999939][9999939]] |         |         |         |         |                     |                       |
| 12/19 19:39 | aaknaaka | [[al:9999991][9999991]] |         |         |         |         |         | [[awak:A99919993-99929][A99919993-99929]]     |                       |
| 12/19 19:99 | waaawaaa | [[al:9999993][9999993]] | [[al:9999991][9999991]] |         |         |         |         | [[awak:A99919993-91939][A99919993-91939]]     |                       |
| 12/19 19:19 | aaaaawla | [[al:9999993][9999993]] | [[al:9999991][9999991]] |         |         |         |         | a2919.93_12@9999999 |                       |
| 12/19 19:19 | kaaaa    | [[al:9999999][9999999]] | [[al:9999919][9999919]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:29 | kaaaa    | [[al:9999919][9999919]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:99 | aaaawl   | [[al:9999999][9999999]] | [[al:9999932][9999932]] |         |         |         |         | [[awak:A99919993-91399][A99919993-91399]]     |                       |
| 12/19 19:99 | aaka     | [[al:9999999][9999999]] | [[al:9999939][9999939]] |         |         |         |         | [[awak:A99919993-99999][A99919993-99999]]     |                       |
| 12/19 19:99 | aaaawl   | [[al:9999999][9999999]] | [[al:9999992][9999992]] |         |         |         |         | [[awak:A99919993-91399][A99919993-91399]]     |                       |
| 12/19 19:91 | aaaawl   | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91399][A99919993-91399]]     |                       |
| 12/19 19:99 | aaya     | [[al:9999929][9999929]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 19:19 | aaaawl   | [[al:9999939][9999939]] | [[al:9999929][9999929]] |         |         |         |         | [[awak:A99919993-91399][A99919993-91399]]     |                       |
| 12/19 19:99 | ywnaawa  | [[al:9999993][9999993]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91991][A99919993-91991]]     |                       |
| 12/19 19:99 | xaa      | [[al:9999199][9999199]] | [[al:9999192][9999192]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 19:99 | yya      | [[al:9999199][9999199]] | [[al:9999199][9999199]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 19:99 | kaaakaa  | [[al:9999199][9999199]] | [[al:9999192][9999192]] |         |         |         |         | [[awak:A99919993-91399][A99919993-91399]]     |                       |
| 12/19 29:33 | aawklan  |         |         |         |         |         | [[al:9999239][9999239]] | [[awak:A99919993-92999][A99919993-92999]]     |                       |
| 12/19 22:29 | yaaawaa  | [[al:9999991][9999991]] | [[al:9999939][9999939]] |         |         |         |         | [[awak:A99919993-92199][A99919993-92199]]     |                       |
| 12/19 23:91 | aaaaala  | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-92192][A99919993-92192]]     |                       |
| 12/19 23:91 | aawkaal  | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-99911][A99919993-99911]]     |                       |
| 12/19 23:93 | aawnaaak | [[al:9999999][9999999]] | [[al:9999929][9999929]] |         |         |         |         | [[awak:A99919993-91999][A99919993-91999]]     |                       |
| 12/19 23:99 | yya      | [[al:9999999][9999999]] | [[al:9999999][9999999]] |         |         |         |         | [[awak:A99919993-91991][A99919993-91991]]     |                       |
|-------------+----------+---------+---------+---------+---------+---------+---------+---------------------+-----------------------|

@emacs18
Copy link
Contributor Author

emacs18 commented Dec 22, 2020

Not only are things slow, but the alignment is messed up as well. Try cutting and pasting the headline. Some of the column widths are about three times as wide as they should be. If you then put the cursor somewhere in the table then hit TAB, then the widths shrink to what they should be, i.e., as wide as it needs to be but no more.

@cinelerra-gg
Copy link

I am new to spacemacs and can't get spacemacs to run because I keep getting the error message, "cannot load valign". Emacs also won't quit and doesn't respond at all. What can I do?

@lebensterben
Copy link
Collaborator

I am new to spacemacs and can't get spacemacs to run because I keep getting the error message, "cannot load valign". Emacs also won't quit and doesn't respond at all. What can I do?

@cinelerra-gg sudo killall emacs

@cinelerra-gg
Copy link

@lebensterben Wow, the answer was very fast, thank you. I do get the quitting/killing of a program, my question was how can I fix this error that spacemacs starts correctly at all or can this problem only be fixed by the developers. Anyway thanks for the quick feedback.

@lebensterben
Copy link
Collaborator

@lebensterben Wow, the answer was very fast, thank you. I do get the quitting/killing of a program, my question was how can I fix this error that spacemacs starts correctly at all or can this problem only be fixed by the developers. Anyway thanks for the quick feedback.

@cinelerra-gg you can disable the valign package, by either adding it to the excluded package list, or setting the org layer variable to disable it by default.

@cinelerra-gg
Copy link

@lebensterben Okay, I understand. I'll see if I can get it to work. Thank you.

@emacs18
Copy link
Contributor Author

emacs18 commented Dec 26, 2020

@rayw000 Could you apply the following patch please?

diff --git a/layers/+spacemacs/spacemacs-org/packages.el b/layers/+spacemacs/spacemacs-org/packages.el
index a67137b6c..1f160ac72 100644
--- a/layers/+spacemacs/spacemacs-org/packages.el
+++ b/layers/+spacemacs/spacemacs-org/packages.el
@@ -25,7 +25,7 @@
     org-superstar
     (space-doc :location local)
     toc-org
-    valign
+    (valign :toggle org-enable-valign)
     ))
 
 (defun spacemacs-org/post-init-flyspell ()

Without this patch valign package is setup by spacemacs even if org-enable-valign is nil, e.g., valign package is activated. With this patch valign package is not activated which what folks would want, i.e., valign is completely out of the way.

@rayw000
Copy link
Contributor

rayw000 commented Dec 26, 2020

@rayw000 Could you apply the following patch please?

diff --git a/layers/+spacemacs/spacemacs-org/packages.el b/layers/+spacemacs/spacemacs-org/packages.el

index a67137b6c..1f160ac72 100644

--- a/layers/+spacemacs/spacemacs-org/packages.el

+++ b/layers/+spacemacs/spacemacs-org/packages.el

@@ -25,7 +25,7 @@

     org-superstar

     (space-doc :location local)

     toc-org

-    valign

+    (valign :toggle org-enable-valign)

     ))

 

 (defun spacemacs-org/post-init-flyspell ()

Without this patch valign package is setup by spacemacs even if org-enable-valign is nil, e.g., valign package is activated. With this patch valign package is not activated which what folks would want, i.e., valign is completely out of the way.

I'd like to. Thank you for your advice.

Not only set variable org-enable-valign as a toggle, but also removed codes which treat this variable as a condition.

@AlohaWorld
Copy link

@emacs18

Sorry for making you in trouble. I'm the one who introduced valign-mode into spacemacs.

I opened PR #14196 because tables with non-ascii characters are not well-aligned in org-mode buffers (not in exported files) for years, for me and for some other users. Do you mind if you have a test with non-ascii characters? 🙂

I ran into this trouble.
When opening ~/.emacs.d/layers/LAYERS.org, emacs reports: Valign cannot parse the table: "Missing rows or columns".

After pulling the repo and disabling valign, the trouble disappears.

The only thing that need to be mentioned is, there was no non-ascii characters in LAYERS.org while there were many non-ascii characters in other .org files which had been load and opened in emacs.

@rayw000
Copy link
Contributor

rayw000 commented Dec 28, 2020

@emacs18
Sorry for making you in trouble. I'm the one who introduced valign-mode into spacemacs.
I opened PR #14196 because tables with non-ascii characters are not well-aligned in org-mode buffers (not in exported files) for years, for me and for some other users. Do you mind if you have a test with non-ascii characters? 🙂

I ran into this trouble.
When opening ~/.emacs.d/layers/LAYERS.org, emacs reports: Valign cannot parse the table: "Missing rows or columns".

After pulling the repo and disabling valign, the trouble disappears.

The only thing that need to be mentioned is, there was no non-ascii characters in LAYERS.org while there were many non-ascii characters in other .org files which had been load and opened in emacs.

@AlohaWorld Thank you for your feedback!

Currently I'm trying to reproduce possible errors which valign-mode may bring into spacemacs. I haven't seen "Missing rows or columns" yet. Would you please give me some clues so I can try to fix it and open a PR to https://github.com/casouri/valign ?

@stormwatch
Copy link
Contributor

stormwatch commented Jan 4, 2021

I'd like to use valign since I usually edit org files with variable-pitch-mode toggled on. Which is the correct way to reenable valign? Should I add (setq org-enable-valign t) inside dotspacemacs/user-init? or add

(use-package valign
    :defer t
    :init
    (progn
      (add-hook 'org-mode-hook 'valign-mode)
      (add-hook 'valign-mode-hook (lambda () (unless valign-mode
                                               (valign-remove-advice))))))

to dotspacemacs/user-config?

Or change the default in config.el? The later will definitely work but I'd like to keep differences with upstream to a minimum.

@emacs18
Copy link
Contributor Author

emacs18 commented Jan 4, 2021

In .spacemacs file there is dotspacemacs/layers function in which you enable layers. You enable org layer like this:

     (org
      :variables
      ...
      org-enable-valign t
      ...
      )

@emacs18
Copy link
Contributor Author

emacs18 commented Jan 4, 2021

Someone ought to document valign within spacemacs. As I reported earlier, there is not even a single line to explain what valign is or how to use it.

@stormwatch
Copy link
Contributor

In .spacemacs file there is dotspacemacs/layers function in which you enable layers. You enable org layer like this:

     (org
      :variables
      ...
      org-enable-valign t
      ...
      )

That would work too! I was unsure because org-enable-valign is declared in spacemacs-org instead of org

@duianto
Copy link
Collaborator

duianto commented Jan 14, 2021

A PR has been opened to document the variable:
[org] Update org-enable-valign #14296

It also moves the variable definition and valign package setup to the org layer.

JAremko suggested a possible variable name change, and some possible upstream improvements.

If anyone with some valign knowledge agrees then the variable name can be updated and feel free to suggest the improvements upstream.

@duianto
Copy link
Collaborator

duianto commented Jan 26, 2021

The PRs changes have been applied to the develop branch.
[org] Update org-enable-valign #14296

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants