freenode/#clim - IRC Chatlog
Search
9:56:42
jackdaniel
reb: here is the issue (filled oh my over a year ago): https://github.com/McCLIM/McCLIM/issues/827 with a very valuable comment from |3b| ; if you have some input regarding device units please put it there
9:57:30
jackdaniel
there is also an older post of mine: https://common-lisp.net/project/mcclim/posts/Sheets-as-ideal-forms.html and it discusses units (I'm aware that there are a few inaccurate statements - at least from the perspective of my current knowledge about clim)
9:58:35
jackdaniel
as of what clim specifies and what we have now: clim specifies backend-dependent device units as a default (but you can specify other, like '(30 :character) or '(20 :inch)
9:58:36
beach
ikrabbe: I was mainly joking. But I was also suggesting that jackdaniel should feel lucky that there are qualified people offering to help out. There are fewer such offers for SICL, at least for now.
9:59:17
jackdaniel
but such definition of a default unit is not useful - taking a borderline example: 30 device (horizontal) units are 30 columns on the terminal backend
9:59:56
jackdaniel
that's why I want to settle on something slightly tied to the real-world measurement resembling a pixel
10:00:56
jackdaniel
(here's where either a point (1/72 inch) or a device independent pixel (1/90 inch) comes into play)
10:02:03
jackdaniel
from technical perspective: we have access to monitor dpi in the backend (you can query i.e pixels and inches of the screen against the graft), so we could use that for the font dpi, but currently it is stored in a variable as previously hinted
10:02:19
ikrabbe
jackdaniel: I find all these documents and approaches to coordinate transformations disturbing, as the general problem is well known and solved. I think its more gaining to care about other topics, once a general tranformation is defined. Real world pixel can very on a vast range for different devices.
10:02:59
jackdaniel
I've spent some time in studying various approaches and I don't think that the problem is well known and solved, but maybe I didn't study hard enough
10:03:00
ikrabbe
One of the best discussions on coordinate translation is in the TeX system I guess, which is outstanding by using only integer coordinates.
10:03:39
ikrabbe
Its just easy to get things wrong, when transforming coordinates. The theory is very simple.
10:04:23
jackdaniel
the issue we are tackling is how to map "ideal" applications onto physical devices like a screen, a console, a web page or a sheet of paper
10:04:57
jackdaniel
(for example - what units the coordinate system of this abstract ideal sheet has)
10:06:48
ikrabbe
I once worked for the german SuperRTL, where we wrote mangement software for mobile websites for children. The result was, that you cannot always define a layout for any device, no matter how you choose your units. It is far more important to define a useable look & feel for the user.
10:09:33
ikrabbe
The choice of units is only important, if you want to communicate the coordinates as numbers, which is sometimes funny withy clim / lisp, having things like 4278 / 9
10:10:26
ikrabbe
I guess the problem must be somewhere between compose-space for single-child panes and compose-space for spacing panes
10:12:06
ikrabbe
Core/clim-core/panes/composition.lisp:247:(defmethod compose-space ((pane single-child-composite-pane)
10:12:06
ikrabbe
Core/clim-core/panes/composition.lisp:1012:(defmethod compose-space ((pane spacing-pane) &key width height)
10:25:34
jackdaniel
https://github.com/McCLIM/McCLIM/commit/25ac2add427c99541eb6cf09bbe886da8cc16bcf
10:28:29
jackdaniel
so, regarding the project of yours (for devops) - do you have any interesting screenshots?
10:33:27
ikrabbe
not yet. My status with clim is still learning, so I'm trying some things. Also lisp is quite new to me. I concentrated first on command lines that can be nested to compose remote commands in a transparent way, as in `("/usr/bin/ssh" ("-l" ,user ,system ("bash" "-c" ("grep" ,progname "/var/log/messages" "|" "awk" ("{ print $5}")))))))
10:35:15
ikrabbe
but I found your console-io tutorial on turtleware today, which seems also usefull, though I privately seldom use terminal codes (hanging in a dumb plan9 rc terminal window)
10:52:48
ikrabbe
but anyway, I guess through the logic stability of lisp code, your tutorial hack might be far more stable, than most php, C# oder java modules ;)
10:56:27
ikrabbe
I could already start a live as a fairy teller, about funny things I stumbled across. Currently for example the PHPMailer admin interface is unable to write a configuration for our password-less internal mail router. You need to fix the configuration either by hand or with a cli tool that comes with PHPMailer. (just as a quick example)
10:58:03
ikrabbe
but still I don't have a valid text-margin until I re-calculate and set it, I guess...
10:58:45
jackdaniel
margins may be either relative to their corresponding edge of the boundign rectangle of the sheet or have absolute coordinates
13:00:47
reb
jackdaniel: I tried changing *dpi* but did not notice any change. It could be that I needed to restart my session, however. I did not try that. Is it currently possible to modify example code, such as ex1.lisp, to use inches instead of pixels when specifying pane size with the CLX backend?