jimeh / .emacs.d

My personal Emacs config with any quirks, oddities, bugs, and man-eating errors I live with on a daily basis.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

With Emacs 30 from daviderestivo I am getting following error.

nishikant opened this issue · comments

Hi Jim I like Siren and the way you have set it up. I recently updated my emacs and facing below issue. My Lisp skills are not good enough, yet, to figure it out..

https://github.com/daviderestivo/homebrew-emacs-head

Debugger entered--Lisp error: (error "Invalid face box" :line-width 1 :style none)
internal-set-lisp-face-attribute(custom-button :box (:line-width 1 :style none) #<frame Emacs - scratch 0x14d8bcb40>)
#f(compiled-function (face frame &rest args) "Set attributes of FACE on FRAME from ARGS.\nThis function overrides the face attributes specified by FACE's face spec.\nIt is mostly intended for internal use.\n\nIf FRAME is a frame, set the FACE's attributes only for that frame. If\nFRAME is nil, set attribute values for all existing frames, as well as\nthe default for new frames. If FRAME is t, change the default values\nof attributes for new frames.\n\nARGS must come in pairs ATTRIBUTE VALUE. ATTRIBUTE must be a valid face\nattribute name and VALUE must be a value that is valid for ATTRIBUTE,\nas described below for each attribute.\n\nIn addition to the attribute values listed below, all attributes can\nalso be set to the special value unspecified', which means the face\ndoesn't by itself specify a value for the attribute.\n\nWhen a new frame is created, attribute values in the FACE's defface'\nspec normally override the unspecified' values in the FACE's\ndefault attributes. To avoid that, i.e. to cause ATTRIBUTE's value\nbe reset to unspecified' when creating new frames, disregarding\nwhat the FACE's face spec says, call this function with FRAME set to\nt and the ATTRIBUTE's value set to unspecified'.\n\nNote that the ATTRIBUTE VALUE pairs are evaluated in the order\nthey are specified, except that the :family' and :foundry'\nattributes are evaluated first.\n\nThe following attributes are recognized:\n\n:family'\n\nVALUE must be a string specifying the font family\n(e.g. "Monospace").\n\n:foundry'\n\nVALUE must be a string specifying the font foundry,\ne.g., \"adobe\". If a font foundry is specified, wild-cards '\nand ?' are allowed.\n\n:width'\n\nVALUE specifies the relative proportionate width of the font to use.\nIt must be one of the symbols ultra-condensed', extra-condensed',\ncondensed' (a.k.a. compressed', a.k.a. narrow'),\nsemi-condensed' (a.k.a. demi-condensed'), normal' (a.k.a. medium',\na.k.a. regular'), semi-expanded' (a.k.a. demi-expanded'),\nexpanded', extra-expanded', or ultra-expanded' (a.k.a. wide').\n\n:height'\n\nVALUE specifies the relative or absolute font size (height of the\nfont). An absolute height is an integer, and specifies font height in\nunits of 1/10 pt. A relative height is either a floating point\nnumber, which specifies a scaling factor for the underlying face\nheight; or a function that takes a single argument (the underlying\nface height) and returns the new height. Note that for the default'\nface, you must specify an absolute height (since there is nothing for\nit to be relative to).\n\n:weight'\n\nVALUE specifies the weight of the font to use. It must be one of\nthe symbols ultra-heavy', heavy' (a.k.a. black'),\nultra-bold' (a.k.a. extra-bold'), bold',\nsemi-bold' (a.k.a. demi-bold'), medium', normal' (a.k.a. regular',\na.k.a. book'), semi-light' (a.k.a. demi-light'),\nlight', extra-light' (a.k.a. ultra-light'), or thin'.\n\n:slant'\n\nVALUE specifies the slant of the font to use. It must be one of the\nsymbols italic', oblique', normal', reverse-italic', or\nreverse-oblique'.\n\n:foreground', :background'\n\nVALUE must be a color name, a string.\n\n:underline'\n\nVALUE specifies whether characters in FACE should be underlined.\nIf VALUE is t, underline with foreground color of the face.\nIf VALUE is a string, underline with that color.\nIf VALUE is nil, explicitly don't underline.\n\nOtherwise, VALUE must be a property list of the form:\n\n(:color COLOR :style STYLE)'.\n\nCOLOR can be either a color name string or foreground-color'.\nSTYLE can be either line' or wave'.\nIf a keyword/value pair is missing from the property list, a\ndefault value will be used for the value.\nThe default value of COLOR is the foreground color of the face.\nThe default value of STYLE is line'.\n\n:overline'\n\nVALUE specifies whether characters in FACE should be overlined. If\nVALUE is t, overline with foreground color of the face. If VALUE is a\nstring, overline with that color. If VALUE is nil, explicitly don't\noverline.\n\n:strike-through'\n\nVALUE specifies whether characters in FACE should be drawn with a line\nstriking through them. If VALUE is t, use the foreground color of the\nface. If VALUE is a string, strike-through with that color. If VALUE\nis nil, explicitly don't strike through.\n\n:box'\n\nVALUE specifies whether characters in FACE should have a box drawn\naround them. If VALUE is nil, explicitly don't draw boxes. If\nVALUE is t, draw a box with lines of width 1 in the foreground color\nof the face. If VALUE is a string, the string must be a color name,\nand the box is drawn in that color with a line width of 1. Otherwise,\nVALUE must be a property list of the following form:\n\n (:line-width WIDTH :color COLOR :style STYLE)\n\nIf a keyword/value pair is missing from the property list, a default\nvalue will be used for the value, as specified below.\n\nWIDTH specifies the width of the lines to draw; it defaults to 1.\nIf WIDTH is negative, the absolute value is the width of the lines,\nand draw top/bottom lines inside the characters area, not around it.\nWIDTH can also be a cons (VWIDTH . HWIDTH), which specifies different\nvalues for the vertical and the horizontal line width.\nCOLOR is the name of the color to use for the box lines, default is\nthe background color of the face for 3D and flat-button' boxes, and\nthe foreground color of the face for the other boxes.\nSTYLE specifies whether a 3D box should be drawn. If STYLE\nis released-button', draw a box looking like a released 3D button.\nIf STYLE is pressed-button', draw a box that looks like a pressed\nbutton. If STYLE is nil, flat-button', or omitted, draw a 2D box.\n\n:inverse-video'\n\nVALUE specifies whether characters in FACE should be displayed in\ninverse video. VALUE must be one of t or nil.\n\n:stipple'\n\nIf VALUE is a string, it must be the name of a file of pixmap data.\nThe directories listed in the x-bitmap-file-path' variable are\nsearched. Alternatively, VALUE may be a list of the form (WIDTH\nHEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA\nis a string containing the raw bits of the bitmap. VALUE nil means\nexplicitly don't use a stipple pattern.\n\nFor convenience, attributes :family', :foundry', :width',\n:height', :weight', and :slant' may also be set in one step\nfrom an X font name:\n\n:extend'\n\nVALUE specifies whether the FACE should be extended after EOL.\nVALUE must be one of t or nil.\n\n:font'\n\nSet font-related face attributes from VALUE.\nVALUE must be a valid font name or font object. It can also\nbe a fontset name. Setting this attribute will also set\nthe :family', :foundry', :width', :height', :weight',\nand :slant' attributes.\n\n:inherit'\n\nVALUE is the name of a face from which to inherit attributes, or\na list of face names. Attributes from inherited faces are merged\ninto the face like an underlying face would be, with higher\npriority than underlying faces.\n\nFor backward compatibility, the keywords :bold' and :italic'\ncan be used to specify weight and slant respectively. This usage\nis considered obsolete. For these two keywords, the VALUE must\nbe either t or nil. A value of t for :bold' is equivalent to\nsetting :weight' to bold', and a value of t for :italic' is\nequivalent to setting :slant' to italic'. But if :weight' is\nspecified in the face spec, :bold' is ignored, and if :slant'\nis specified, :italic' is ignored." #<bytecode -0x15d4f6e03bbede27>)(custom-button #<frame Emacs - scratch 0x14d8bcb40> :foreground "#51afef" :background "#242730" :box (:line-width 1 :style none))
apply(#f(compiled-function (face frame &rest args) "Set attributes of FACE on FRAME from ARGS.\nThis function overrides the face attributes specified by FACE's face spec.\nIt is mostly intended for internal use.\n\nIf FRAME is a frame, set the FACE's attributes only for that frame. If\nFRAME is nil, set attribute values for all existing frames, as well as\nthe default for new frames. If FRAME is t, change the default values\nof attributes for new frames.\n\nARGS must come in pairs ATTRIBUTE VALUE. ATTRIBUTE must be a valid face\nattribute name and VALUE must be a value that is valid for ATTRIBUTE,\nas described below for each attribute.\n\nIn addition to the attribute values listed below, all attributes can\nalso be set to the special value unspecified', which means the face\ndoesn't by itself specify a value for the attribute.\n\nWhen a new frame is created, attribute values in the FACE's defface'\nspec normally override the unspecified' values in the FACE's\ndefault attributes. To avoid that, i.e. to cause ATTRIBUTE's value\nbe reset to unspecified' when creating new frames, disregarding\nwhat the FACE's face spec says, call this function with FRAME set to\nt and the ATTRIBUTE's value set to unspecified'.\n\nNote that the ATTRIBUTE VALUE pairs are evaluated in the order\nthey are specified, except that the :family' and :foundry'\nattributes are evaluated first.\n\nThe following attributes are recognized:\n\n:family'\n\nVALUE must be a string specifying the font family\n(e.g. "Monospace").\n\n:foundry'\n\nVALUE must be a string specifying the font foundry,\ne.g., \"adobe\". If a font foundry is specified, wild-cards
'\nand ?' are allowed.\n\n:width'\n\nVALUE specifies the relative proportionate width of the font to use.\nIt must be one of the symbols ultra-condensed', extra-condensed',\ncondensed' (a.k.a. compressed', a.k.a. narrow'),\nsemi-condensed' (a.k.a. demi-condensed'), normal' (a.k.a. medium',\na.k.a. regular'), semi-expanded' (a.k.a. demi-expanded'),\nexpanded', extra-expanded', or ultra-expanded' (a.k.a. wide').\n\n:height'\n\nVALUE specifies the relative or absolute font size (height of the\nfont). An absolute height is an integer, and specifies font height in\nunits of 1/10 pt. A relative height is either a floating point\nnumber, which specifies a scaling factor for the underlying face\nheight; or a function that takes a single argument (the underlying\nface height) and returns the new height. Note that for the default'\nface, you must specify an absolute height (since there is nothing for\nit to be relative to).\n\n:weight'\n\nVALUE specifies the weight of the font to use. It must be one of\nthe symbols ultra-heavy', heavy' (a.k.a. black'),\nultra-bold' (a.k.a. extra-bold'), bold',\nsemi-bold' (a.k.a. demi-bold'), medium', normal' (a.k.a. regular',\na.k.a. book'), semi-light' (a.k.a. demi-light'),\nlight', extra-light' (a.k.a. ultra-light'), or thin'.\n\n:slant'\n\nVALUE specifies the slant of the font to use. It must be one of the\nsymbols italic', oblique', normal', reverse-italic', or\nreverse-oblique'.\n\n:foreground', :background'\n\nVALUE must be a color name, a string.\n\n:underline'\n\nVALUE specifies whether characters in FACE should be underlined.\nIf VALUE is t, underline with foreground color of the face.\nIf VALUE is a string, underline with that color.\nIf VALUE is nil, explicitly don't underline.\n\nOtherwise, VALUE must be a property list of the form:\n\n(:color COLOR :style STYLE)'.\n\nCOLOR can be either a color name string or foreground-color'.\nSTYLE can be either line' or wave'.\nIf a keyword/value pair is missing from the property list, a\ndefault value will be used for the value.\nThe default value of COLOR is the foreground color of the face.\nThe default value of STYLE is line'.\n\n:overline'\n\nVALUE specifies whether characters in FACE should be overlined. If\nVALUE is t, overline with foreground color of the face. If VALUE is a\nstring, overline with that color. If VALUE is nil, explicitly don't\noverline.\n\n:strike-through'\n\nVALUE specifies whether characters in FACE should be drawn with a line\nstriking through them. If VALUE is t, use the foreground color of the\nface. If VALUE is a string, strike-through with that color. If VALUE\nis nil, explicitly don't strike through.\n\n:box'\n\nVALUE specifies whether characters in FACE should have a box drawn\naround them. If VALUE is nil, explicitly don't draw boxes. If\nVALUE is t, draw a box with lines of width 1 in the foreground color\nof the face. If VALUE is a string, the string must be a color name,\nand the box is drawn in that color with a line width of 1. Otherwise,\nVALUE must be a property list of the following form:\n\n (:line-width WIDTH :color COLOR :style STYLE)\n\nIf a keyword/value pair is missing from the property list, a default\nvalue will be used for the value, as specified below.\n\nWIDTH specifies the width of the lines to draw; it defaults to 1.\nIf WIDTH is negative, the absolute value is the width of the lines,\nand draw top/bottom lines inside the characters area, not around it.\nWIDTH can also be a cons (VWIDTH . HWIDTH), which specifies different\nvalues for the vertical and the horizontal line width.\nCOLOR is the name of the color to use for the box lines, default is\nthe background color of the face for 3D and flat-button' boxes, and\nthe foreground color of the face for the other boxes.\nSTYLE specifies whether a 3D box should be drawn. If STYLE\nis released-button', draw a box looking like a released 3D button.\nIf STYLE is pressed-button', draw a box that looks like a pressed\nbutton. If STYLE is nil, flat-button', or omitted, draw a 2D box.\n\n:inverse-video'\n\nVALUE specifies whether characters in FACE should be displayed in\ninverse video. VALUE must be one of t or nil.\n\n:stipple'\n\nIf VALUE is a string, it must be the name of a file of pixmap data.\nThe directories listed in the x-bitmap-file-path' variable are\nsearched. Alternatively, VALUE may be a list of the form (WIDTH\nHEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA\nis a string containing the raw bits of the bitmap. VALUE nil means\nexplicitly don't use a stipple pattern.\n\nFor convenience, attributes :family', :foundry', :width',\n:height', :weight', and :slant' may also be set in one step\nfrom an X font name:\n\n:extend'\n\nVALUE specifies whether the FACE should be extended after EOL.\nVALUE must be one of t or nil.\n\n:font'\n\nSet font-related face attributes from VALUE.\nVALUE must be a valid font name or font object. It can also\nbe a fontset name. Setting this attribute will also set\nthe :family', :foundry', :width', :height', :weight',\nand :slant' attributes.\n\n:inherit'\n\nVALUE is the name of a face from which to inherit attributes, or\na list of face names. Attributes from inherited faces are merged\ninto the face like an underlying face would be, with higher\npriority than underlying faces.\n\nFor backward compatibility, the keywords :bold' and :italic'\ncan be used to specify weight and slant respectively. This usage\nis considered obsolete. For these two keywords, the VALUE must\nbe either t or nil. A value of t for :bold' is equivalent to\nsetting :weight' to bold', and a value of t for :italic' is\nequivalent to setting :slant' to italic'. But if :weight' is\nspecified in the face spec, :bold' is ignored, and if :slant'\nis specified, :italic' is ignored." #<bytecode -0x15d4f6e03bbede27>) custom-button #<frame Emacs - scratch 0x14d8bcb40> (:foreground "#51afef" :background "#242730" :box ...))
ad-Advice-set-face-attribute(#f(compiled-function (face frame &rest args) "Set attributes of FACE on FRAME from ARGS.\nThis function overrides the face attributes specified by FACE's face spec.\nIt is mostly intended for internal use.\n\nIf FRAME is a frame, set the FACE's attributes only for that frame. If\nFRAME is nil, set attribute values for all existing frames, as well as\nthe default for new frames. If FRAME is t, change the default values\nof attributes for new frames.\n\nARGS must come in pairs ATTRIBUTE VALUE. ATTRIBUTE must be a valid face\nattribute name and VALUE must be a value that is valid for ATTRIBUTE,\nas described below for each attribute.\n\nIn addition to the attribute values listed below, all attributes can\nalso be set to the special value unspecified', which means the face\ndoesn't by itself specify a value for the attribute.\n\nWhen a new frame is created, attribute values in the FACE's defface'\nspec normally override the unspecified' values in the FACE's\ndefault attributes. To avoid that, i.e. to cause ATTRIBUTE's value\nbe reset to unspecified' when creating new frames, disregarding\nwhat the FACE's face spec says, call this function with FRAME set to\nt and the ATTRIBUTE's value set to unspecified'.\n\nNote that the ATTRIBUTE VALUE pairs are evaluated in the order\nthey are specified, except that the :family' and :foundry'\nattributes are evaluated first.\n\nThe following attributes are recognized:\n\n:family'\n\nVALUE must be a string specifying the font family\n(e.g. "Monospace").\n\n:foundry'\n\nVALUE must be a string specifying the font foundry,\ne.g., \"adobe\". If a font foundry is specified, wild-cards '\nand ?' are allowed.\n\n:width'\n\nVALUE specifies the relative proportionate width of the font to use.\nIt must be one of the symbols ultra-condensed', extra-condensed',\ncondensed' (a.k.a. compressed', a.k.a. narrow'),\nsemi-condensed' (a.k.a. demi-condensed'), normal' (a.k.a. medium',\na.k.a. regular'), semi-expanded' (a.k.a. demi-expanded'),\nexpanded', extra-expanded', or ultra-expanded' (a.k.a. wide').\n\n:height'\n\nVALUE specifies the relative or absolute font size (height of the\nfont). An absolute height is an integer, and specifies font height in\nunits of 1/10 pt. A relative height is either a floating point\nnumber, which specifies a scaling factor for the underlying face\nheight; or a function that takes a single argument (the underlying\nface height) and returns the new height. Note that for the default'\nface, you must specify an absolute height (since there is nothing for\nit to be relative to).\n\n:weight'\n\nVALUE specifies the weight of the font to use. It must be one of\nthe symbols ultra-heavy', heavy' (a.k.a. black'),\nultra-bold' (a.k.a. extra-bold'), bold',\nsemi-bold' (a.k.a. demi-bold'), medium', normal' (a.k.a. regular',\na.k.a. book'), semi-light' (a.k.a. demi-light'),\nlight', extra-light' (a.k.a. ultra-light'), or thin'.\n\n:slant'\n\nVALUE specifies the slant of the font to use. It must be one of the\nsymbols italic', oblique', normal', reverse-italic', or\nreverse-oblique'.\n\n:foreground', :background'\n\nVALUE must be a color name, a string.\n\n:underline'\n\nVALUE specifies whether characters in FACE should be underlined.\nIf VALUE is t, underline with foreground color of the face.\nIf VALUE is a string, underline with that color.\nIf VALUE is nil, explicitly don't underline.\n\nOtherwise, VALUE must be a property list of the form:\n\n(:color COLOR :style STYLE)'.\n\nCOLOR can be either a color name string or foreground-color'.\nSTYLE can be either line' or wave'.\nIf a keyword/value pair is missing from the property list, a\ndefault value will be used for the value.\nThe default value of COLOR is the foreground color of the face.\nThe default value of STYLE is line'.\n\n:overline'\n\nVALUE specifies whether characters in FACE should be overlined. If\nVALUE is t, overline with foreground color of the face. If VALUE is a\nstring, overline with that color. If VALUE is nil, explicitly don't\noverline.\n\n:strike-through'\n\nVALUE specifies whether characters in FACE should be drawn with a line\nstriking through them. If VALUE is t, use the foreground color of the\nface. If VALUE is a string, strike-through with that color. If VALUE\nis nil, explicitly don't strike through.\n\n:box'\n\nVALUE specifies whether characters in FACE should have a box drawn\naround them. If VALUE is nil, explicitly don't draw boxes. If\nVALUE is t, draw a box with lines of width 1 in the foreground color\nof the face. If VALUE is a string, the string must be a color name,\nand the box is drawn in that color with a line width of 1. Otherwise,\nVALUE must be a property list of the following form:\n\n (:line-width WIDTH :color COLOR :style STYLE)\n\nIf a keyword/value pair is missing from the property list, a default\nvalue will be used for the value, as specified below.\n\nWIDTH specifies the width of the lines to draw; it defaults to 1.\nIf WIDTH is negative, the absolute value is the width of the lines,\nand draw top/bottom lines inside the characters area, not around it.\nWIDTH can also be a cons (VWIDTH . HWIDTH), which specifies different\nvalues for the vertical and the horizontal line width.\nCOLOR is the name of the color to use for the box lines, default is\nthe background color of the face for 3D and flat-button' boxes, and\nthe foreground color of the face for the other boxes.\nSTYLE specifies whether a 3D box should be drawn. If STYLE\nis released-button', draw a box looking like a released 3D button.\nIf STYLE is pressed-button', draw a box that looks like a pressed\nbutton. If STYLE is nil, flat-button', or omitted, draw a 2D box.\n\n:inverse-video'\n\nVALUE specifies whether characters in FACE should be displayed in\ninverse video. VALUE must be one of t or nil.\n\n:stipple'\n\nIf VALUE is a string, it must be the name of a file of pixmap data.\nThe directories listed in the x-bitmap-file-path' variable are\nsearched. Alternatively, VALUE may be a list of the form (WIDTH\nHEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA\nis a string containing the raw bits of the bitmap. VALUE nil means\nexplicitly don't use a stipple pattern.\n\nFor convenience, attributes :family', :foundry', :width',\n:height', :weight', and :slant' may also be set in one step\nfrom an X font name:\n\n:extend'\n\nVALUE specifies whether the FACE should be extended after EOL.\nVALUE must be one of t or nil.\n\n:font'\n\nSet font-related face attributes from VALUE.\nVALUE must be a valid font name or font object. It can also\nbe a fontset name. Setting this attribute will also set\nthe :family', :foundry', :width', :height', :weight',\nand :slant' attributes.\n\n:inherit'\n\nVALUE is the name of a face from which to inherit attributes, or\na list of face names. Attributes from inherited faces are merged\ninto the face like an underlying face would be, with higher\npriority than underlying faces.\n\nFor backward compatibility, the keywords :bold' and :italic'\ncan be used to specify weight and slant respectively. This usage\nis considered obsolete. For these two keywords, the VALUE must\nbe either t or nil. A value of t for :bold' is equivalent to\nsetting :weight' to bold', and a value of t for :italic' is\nequivalent to setting :slant' to italic'. But if :weight' is\nspecified in the face spec, :bold' is ignored, and if :slant'\nis specified, :italic' is ignored." #<bytecode -0x15d4f6e03bbede27>) custom-button #<frame Emacs - scratch 0x14d8bcb40> :foreground "#51afef" :background "#242730" :box (:line-width 1 :style none))
apply(ad-Advice-set-face-attribute #f(compiled-function (face frame &rest args) "Set attributes of FACE on FRAME from ARGS.\nThis function overrides the face attributes specified by FACE's face spec.\nIt is mostly intended for internal use.\n\nIf FRAME is a frame, set the FACE's attributes only for that frame. If\nFRAME is nil, set attribute values for all existing frames, as well as\nthe default for new frames. If FRAME is t, change the default values\nof attributes for new frames.\n\nARGS must come in pairs ATTRIBUTE VALUE. ATTRIBUTE must be a valid face\nattribute name and VALUE must be a value that is valid for ATTRIBUTE,\nas described below for each attribute.\n\nIn addition to the attribute values listed below, all attributes can\nalso be set to the special value unspecified', which means the face\ndoesn't by itself specify a value for the attribute.\n\nWhen a new frame is created, attribute values in the FACE's defface'\nspec normally override the unspecified' values in the FACE's\ndefault attributes. To avoid that, i.e. to cause ATTRIBUTE's value\nbe reset to unspecified' when creating new frames, disregarding\nwhat the FACE's face spec says, call this function with FRAME set to\nt and the ATTRIBUTE's value set to unspecified'.\n\nNote that the ATTRIBUTE VALUE pairs are evaluated in the order\nthey are specified, except that the :family' and :foundry'\nattributes are evaluated first.\n\nThe following attributes are recognized:\n\n:family'\n\nVALUE must be a string specifying the font family\n(e.g. "Monospace").\n\n:foundry'\n\nVALUE must be a string specifying the font foundry,\ne.g., \"adobe\". If a font foundry is specified, wild-cards
'\nand ?' are allowed.\n\n:width'\n\nVALUE specifies the relative proportionate width of the font to use.\nIt must be one of the symbols ultra-condensed', extra-condensed',\ncondensed' (a.k.a. compressed', a.k.a. narrow'),\nsemi-condensed' (a.k.a. demi-condensed'), normal' (a.k.a. medium',\na.k.a. regular'), semi-expanded' (a.k.a. demi-expanded'),\nexpanded', extra-expanded', or ultra-expanded' (a.k.a. wide').\n\n:height'\n\nVALUE specifies the relative or absolute font size (height of the\nfont). An absolute height is an integer, and specifies font height in\nunits of 1/10 pt. A relative height is either a floating point\nnumber, which specifies a scaling factor for the underlying face\nheight; or a function that takes a single argument (the underlying\nface height) and returns the new height. Note that for the default'\nface, you must specify an absolute height (since there is nothing for\nit to be relative to).\n\n:weight'\n\nVALUE specifies the weight of the font to use. It must be one of\nthe symbols ultra-heavy', heavy' (a.k.a. black'),\nultra-bold' (a.k.a. extra-bold'), bold',\nsemi-bold' (a.k.a. demi-bold'), medium', normal' (a.k.a. regular',\na.k.a. book'), semi-light' (a.k.a. demi-light'),\nlight', extra-light' (a.k.a. ultra-light'), or thin'.\n\n:slant'\n\nVALUE specifies the slant of the font to use. It must be one of the\nsymbols italic', oblique', normal', reverse-italic', or\nreverse-oblique'.\n\n:foreground', :background'\n\nVALUE must be a color name, a string.\n\n:underline'\n\nVALUE specifies whether characters in FACE should be underlined.\nIf VALUE is t, underline with foreground color of the face.\nIf VALUE is a string, underline with that color.\nIf VALUE is nil, explicitly don't underline.\n\nOtherwise, VALUE must be a property list of the form:\n\n(:color COLOR :style STYLE)'.\n\nCOLOR can be either a color name string or foreground-color'.\nSTYLE can be either line' or wave'.\nIf a keyword/value pair is missing from the property list, a\ndefault value will be used for the value.\nThe default value of COLOR is the foreground color of the face.\nThe default value of STYLE is line'.\n\n:overline'\n\nVALUE specifies whether characters in FACE should be overlined. If\nVALUE is t, overline with foreground color of the face. If VALUE is a\nstring, overline with that color. If VALUE is nil, explicitly don't\noverline.\n\n:strike-through'\n\nVALUE specifies whether characters in FACE should be drawn with a line\nstriking through them. If VALUE is t, use the foreground color of the\nface. If VALUE is a string, strike-through with that color. If VALUE\nis nil, explicitly don't strike through.\n\n:box'\n\nVALUE specifies whether characters in FACE should have a box drawn\naround them. If VALUE is nil, explicitly don't draw boxes. If\nVALUE is t, draw a box with lines of width 1 in the foreground color\nof the face. If VALUE is a string, the string must be a color name,\nand the box is drawn in that color with a line width of 1. Otherwise,\nVALUE must be a property list of the following form:\n\n (:line-width WIDTH :color COLOR :style STYLE)\n\nIf a keyword/value pair is missing from the property list, a default\nvalue will be used for the value, as specified below.\n\nWIDTH specifies the width of the lines to draw; it defaults to 1.\nIf WIDTH is negative, the absolute value is the width of the lines,\nand draw top/bottom lines inside the characters area, not around it.\nWIDTH can also be a cons (VWIDTH . HWIDTH), which specifies different\nvalues for the vertical and the horizontal line width.\nCOLOR is the name of the color to use for the box lines, default is\nthe background color of the face for 3D and flat-button' boxes, and\nthe foreground color of the face for the other boxes.\nSTYLE specifies whether a 3D box should be drawn. If STYLE\nis released-button', draw a box looking like a released 3D button.\nIf STYLE is pressed-button', draw a box that looks like a pressed\nbutton. If STYLE is nil, flat-button', or omitted, draw a 2D box.\n\n:inverse-video'\n\nVALUE specifies whether characters in FACE should be displayed in\ninverse video. VALUE must be one of t or nil.\n\n:stipple'\n\nIf VALUE is a string, it must be the name of a file of pixmap data.\nThe directories listed in the x-bitmap-file-path' variable are\nsearched. Alternatively, VALUE may be a list of the form (WIDTH\nHEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA\nis a string containing the raw bits of the bitmap. VALUE nil means\nexplicitly don't use a stipple pattern.\n\nFor convenience, attributes :family', :foundry', :width',\n:height', :weight', and :slant' may also be set in one step\nfrom an X font name:\n\n:extend'\n\nVALUE specifies whether the FACE should be extended after EOL.\nVALUE must be one of t or nil.\n\n:font'\n\nSet font-related face attributes from VALUE.\nVALUE must be a valid font name or font object. It can also\nbe a fontset name. Setting this attribute will also set\nthe :family', :foundry', :width', :height', :weight',\nand :slant' attributes.\n\n:inherit'\n\nVALUE is the name of a face from which to inherit attributes, or\na list of face names. Attributes from inherited faces are merged\ninto the face like an underlying face would be, with higher\npriority than underlying faces.\n\nFor backward compatibility, the keywords :bold' and :italic'\ncan be used to specify weight and slant respectively. This usage\nis considered obsolete. For these two keywords, the VALUE must\nbe either t or nil. A value of t for :bold' is equivalent to\nsetting :weight' to bold', and a value of t for :italic' is\nequivalent to setting :slant' to italic'. But if :weight' is\nspecified in the face spec, :bold' is ignored, and if :slant'\nis specified, :italic' is ignored." #<bytecode -0x15d4f6e03bbede27>) (custom-button #<frame Emacs - scratch 0x14d8bcb40> :foreground "#51afef" :background "#242730" :box ...))
set-face-attribute(custom-button #<frame Emacs - scratch 0x14d8bcb40> :foreground "#51afef" :background "#242730" :box (:line-width 1 :style none))
apply(set-face-attribute custom-button #<frame Emacs - scratch 0x14d8bcb40> (:foreground "#51afef" :background "#242730" :box (:line-width 1 :style none)))
face-spec-set-2(custom-button #<frame Emacs - scratch 0x14d8bcb40> (:foreground "#51afef" :background "#242730" :box (:line-width 1 :style none)))
face-spec-recalc(custom-button #<frame Emacs - scratch 0x14d8bcb40>)
face-spec-set(custom-button ((((type x w32 ns haiku pgtk android) (class color)) :box (:line-width 2 :style released-button) :background "lightgrey" :foreground "black")) face-defface-spec)
custom-declare-face(custom-button ((((type x w32 ns haiku pgtk android) (class color)) :box (:line-width 2 :style released-button) :background "lightgrey" :foreground "black")) "Face for custom buffer buttons if custom-raised-buttons' is non-nil." :version "21.1" :group custom-faces) autoload-do-load((autoload "cus-edit" ("loaddefs.elc" . 237177) nil t) setopt macro) macroexpand-1((setopt treesit-font-lock-level 4) nil) macroexp-macroexpand((setopt treesit-font-lock-level 4) nil) macroexp--expand-all((setopt treesit-font-lock-level 4)) macroexp--all-forms((progn (require 'treesit) (setopt treesit-font-lock-level 4) (defun siren-treesit-prepare (mode source) "Setup treesit for MODE with SOURCE." (add-to-list 'treesit-language-source-alist source) (let ((lang (car source))) (advice-add mode :before (lambda (&rest _) (when ... ...)))))) 1)
#f(compiled-function (form func) #<bytecode 0x1d6883e47a7b0696>)(((progn (require 'treesit) (setopt treesit-font-lock-level 4) (defun siren-treesit-prepare (mode source) "Setup treesit for MODE with SOURCE." (add-to-list 'treesit-language-source-alist source) (let ((lang (car source))) (advice-add mode :before (lambda ... ...)))))) progn) macroexp--expand-all((progn (require 'treesit) (setopt treesit-font-lock-level 4) (defun siren-treesit-prepare (mode source) "Setup treesit for MODE with SOURCE." (add-to-list 'treesit-language-source-alist source) (let ((lang (car source))) (advice-add mode :before (lambda (&rest _) (when ... ...)))))))
macroexp--all-forms((if (fboundp 'treesit-ready-p) (progn (require 'treesit) (setopt treesit-font-lock-level 4) (defun siren-treesit-prepare (mode source) "Setup treesit for MODE with SOURCE." (add-to-list 'treesit-language-source-alist source) (let ((lang (car source))) (advice-add mode :before (lambda ... ...)))))) 1) #f(compiled-function (form func) #<bytecode 0x1d6883e47a7b0696>)(((if (fboundp 'treesit-ready-p) (progn (require 'treesit) (setopt treesit-font-lock-level 4) (defun siren-treesit-prepare (mode source) "Setup treesit for MODE with SOURCE." (add-to-list 'treesit-language-source-alist source) (let ((lang ...)) (advice-add mode :before ...)))))) if)
macroexp--expand-all((if (fboundp 'treesit-ready-p) (progn (require 'treesit) (setopt treesit-font-lock-level 4) (defun siren-treesit-prepare (mode source) "Setup treesit for MODE with SOURCE." (add-to-list 'treesit-language-source-alist source) (let ((lang (car source))) (advice-add mode :before (lambda ... ...))))))) macroexpand--all-toplevel((if (fboundp 'treesit-ready-p) (progn (require 'treesit) (setopt treesit-font-lock-level 4) (defun siren-treesit-prepare (mode source) "Setup treesit for MODE with SOURCE." (add-to-list 'treesit-language-source-alist source) (let ((lang (car source))) (advice-add mode :before (lambda ... ...)))))))
internal-macroexpand-for-load((if (fboundp 'treesit-ready-p) (progn (require 'treesit) (setopt treesit-font-lock-level 4) (defun siren-treesit-prepare (mode source) "Setup treesit for MODE with SOURCE." (add-to-list 'treesit-language-source-alist source) (let ((lang (car source))) (advice-add mode :before `(lambda ... ...)))))) t)
eval-buffer(#<buffer load-320210> nil "/Users/gattu/.emacs.d/modules/text-editing/siren-treesit.el" nil t) ; Reading at buffer position 768
load-with-code-conversion("/Users/gattu/.emacs.d/modules/text-editing/siren-treesit.el" "/Users/gattu/.emacs.d/modules/text-editing/siren-treesit.el" nil t)
require(siren-treesit)
eval-buffer(#<buffer load-242714> nil "/Users/gattu/.emacs.d/core/siren-core-modules.el" nil t) ; Reading at buffer position 3082
load-with-code-conversion("/Users/gattu/.emacs.d/core/siren-core-modules.el" "/Users/gattu/.emacs.d/core/siren-core-modules.el" nil t)
require(siren-core-modules)
eval-buffer(#<buffer load-701588> nil "/Users/gattu/.emacs.d/core/siren-core-init.el" nil t) ; Reading at buffer position 2128
load-with-code-conversion("/Users/gattu/.emacs.d/core/siren-core-init.el" "/Users/gattu/.emacs.d/core/siren-core-init.el" nil nil)
load("/Users/gattu/.emacs.d/core/siren-core-init.el")
eval-buffer(#<buffer load> nil "/Users/gattu/.emacs.d/init.el" nil t) ; Reading at buffer position 595
load-with-code-conversion("/Users/gattu/.emacs.d/init.el" "/Users/gattu/.emacs.d/init.el" t t)
load("/Users/gattu/.emacs.d/init" noerror nomessage)
startup--load-user-init-file(#f(compiled-function () #<bytecode 0x155eca67dc4879>) #f(compiled-function () #<bytecode -0x1f3c61addc0ac8f5>) t)
command-line()
normal-top-level()

When I disable loading of modules/text-editing/siren-treesit from core/siren-core-modules.el.. Things work fine.

So there is some incompatibility in modules/text-editing/siren-treesit.el and emacs@30-head.

@nishikant I've noticed the same error with my own nightly emacs-builds too. Started sometime between the 2023-11-19 and 2023-12-01 build. For the time being I've just reverted back to the 2023-11-19 build.

I haven't had time to properly dig into it myself yet, and I had assumed it's some new change to Emacs that's not yet compatible with a lot of existing themes that uses the :box face property. However if disabling the siren-treesit module solves it for you, it's definitely something else more interesting.

I'll be looking into it closer over the weekend to figure out what's going on :)

Hi Jim thanks for replying.
I recompiled Emacs@30-head and did the configuration from start.. and I don't see the issue now. Just fyi..

Indeed, M-x straight-rebuild-all solved it for me. However I ran into some other issues related to treesit-auto, which I've now properly fixed as of 20 minutes ago.

I believe this issue should be resolved however, so I'll close it :)