2014-04-12 47 views
0

顯示監視器的屬性列表在Emacs中23,評估從在Emacs 23×顯示像素寬度到在Emacs 24

(x-display-pixel-width) 

得到當前窗口的寬度。

在Emacs中24相同的表達式返回所有窗口的組合寬度。

在評估相關,但新的改進,功能

(display-monitor-attributes-list) 

怎樣才能返回,就在主/當前窗口的寬度是多少?

+0

'(窗寬)' - 請注意,這是'window',*不*' frame'。你需要更詳細的例子嗎?例如'(with-current-buffer(get-buffer ...)' – lawlist

+0

我正在尋找像素寬度,而不是字符寬度。此外,我正在尋找(主)顯示器OS X),這是列入的.emacs,設置框架之前。 – Calaf

+0

如何在部分手動* 28.23座標和Windows *?:http://www.gnu.org/software/emacs/manual/html_node /elisp/Coordinates-and-Windows.html#Coordinates-and-Windows – lawlist

回答

2

display-monitor-attribute-list看看:

(顯示顯示器的屬性列表&可選顯示)

返回物理監視器的列表中顯示的屬性。列表中的每個元素 都表示每個物理監視器的屬性。第一個元素對應於主監視器。

屬性用於物理顯示器如下表示爲 屬性鍵和值的ALIST: - 在 (XY WIDTH HEIGHT)工作區的形式位置和大小中的像素 -

幾何位置和寬度和高度在 (WIDTH HEIGHT)幀的形式毫米 - - 在 形式(XY WIDTH高)mm尺寸的像素的工作區域的尺寸由該物理顯示器名爲主幀列表(*) - 物理顯示器作爲一個字符串

其中X,Y,寬度和高度都是整數的名稱。標有(*)的鍵爲 可選。

甲幀由物理顯示器當任一幀的最大 區駐留在監視器或顯示器最接近幀如果幀不相交的任何物理 監視 支配。在一個 圖形顯示每個非尖端幀(包括一個不可見)由恰好一個物理顯示器在 時間占主導地位,但它可以跨越多個(或沒有)的物理顯示器。如果 DISPLAY被省略或零,它默認爲所選幀的 顯示。

例如,找到第一個顯示器的寬度,你可以使用:

(nth 4 (assq 'geometry (car (display-monitor-attributes-list)))) 
+0

當我嘗試在Emacs 24你的榜樣,我得到'EVAL:Symbol的函數定義爲void:顯示顯示器的屬性-list'。 – detly