Skip to content
This repository was archived by the owner on Apr 18, 2026. It is now read-only.
This repository was archived by the owner on Apr 18, 2026. It is now read-only.

if-elif statements break if there's no else #186

@jonbarron

Description

@jonbarron

Environment

If you used latexify on the browser, fill the following items.

  • Browser: Google Chrome Version 118.0.5993.96
  • Frontend:Google Colaboratory

Description

If you try to latexify a function that contains an if/elif statement, it will terminate with an error message of "LatexifySyntaxError: Multiple statements are not supported in If nodes." unless there is an else statement. This is awkward, because there are many things that someone would want to express with if/elif statements that look awkward when rendered using a else statement instead of an elif. Here's an example:

image

Reproduction

Here's that code:

@latexify.function(use_math_symbol=True)
def fn(x):
  if x < 0:
    return -1
  elif x == 0:
    return 0
  elif x > 0:
    return 1

fn

Expected behavior

I'd like to be able to do something like
image

but without that placeholder "else: return None" bit at the end, which is currently necessary.

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions